邵佳豪 3 years ago
parent
commit
f7be04ed32
  1. 24
      src/app/babylon/controller/config-manager.ts
  2. 2
      src/app/babylon/controller/inputController.ts
  3. 4
      src/app/babylon/controller/mode-manager.ts
  4. 2
      src/app/babylon/controller/scene-manager.ts
  5. 6
      src/app/babylon/model/data/institution/facility/property-data/in/property-data-jyj.ts
  6. 8
      src/app/babylon/model/data/mark/all-mark-data.ts
  7. 20
      src/app/babylon/model/data/mark/mark-data.ts
  8. 6
      src/app/babylon/model/data/mark/mark-plan-data.ts
  9. 1
      src/app/babylon/model/info/mark/model-info-mark.ts
  10. 32
      src/app/babylon/model/info/mark/other/mark-plan-particle-info.ts
  11. 14
      src/app/babylon/model/info/model/facilityinfo-tool/facility-area.ts
  12. 18
      src/app/babylon/model/info/model/model-info-building.ts
  13. 55
      src/app/babylon/model/info/model/model-info-facility.ts
  14. 1
      src/app/babylon/tool/babylon-ui-style-tool.ts
  15. 15
      src/app/babylon/view/building-window/building-window.ts
  16. 6
      src/app/babylon/view/facility-window/facility-window.ts
  17. 23
      src/app/babylon/view/mark-window/mark-window.ts
  18. 51
      src/app/pages/plan/plan.component.html
  19. 48
      src/app/pages/plan/plan.component.scss
  20. 12
      src/app/pages/plan/plan.component.ts
  21. BIN
      src/assets/images/flow.png
  22. BIN
      src/assets/images/mark/disaster/dt.png
  23. BIN
      src/assets/images/mark/disaster/h.png
  24. BIN
      src/assets/images/mark/disaster/lyd.png
  25. BIN
      src/assets/images/mark/disaster/lyx.png
  26. BIN
      src/assets/images/mark/disaster/snh.png
  27. BIN
      src/assets/images/mark/disaster/syd.png
  28. BIN
      src/assets/images/mark/disaster/tph.png
  29. BIN
      src/assets/images/mark/disaster/ywa.png
  30. BIN
      src/assets/images/mark/disaster/ywb.png
  31. BIN
      src/assets/images/mark/disaster/ywc.png
  32. BIN
      src/assets/images/mark/inside/jl.png
  33. BIN
      src/assets/images/mark/inside/jyy.png
  34. BIN
      src/assets/images/mark/inside/syy.png
  35. BIN
      src/assets/images/mark/inside/xfsd.png
  36. BIN
      src/assets/images/mark/inside/xfsq.png
  37. BIN
      src/assets/images/mark/inside/xft.png
  38. BIN
      src/assets/images/mark/inside/xyy.png
  39. BIN
      src/assets/images/mark/inside/zg.png
  40. BIN
      src/assets/images/mark/other/ct.png
  41. BIN
      src/assets/images/mark/other/gk.png
  42. BIN
      src/assets/images/mark/other/jca.png
  43. BIN
      src/assets/images/mark/other/jglx.png
  44. BIN
      src/assets/images/mark/other/jjx.png
  45. BIN
      src/assets/images/mark/other/qysda.png
  46. BIN
      src/assets/images/mark/other/qysdb.png
  47. BIN
      src/assets/images/mark/other/wz.png
  48. BIN
      src/assets/images/mark/outside/ga.png
  49. BIN
      src/assets/images/mark/outside/jc.png
  50. BIN
      src/assets/images/mark/outside/jhc.png
  51. BIN
      src/assets/images/mark/outside/jj.png
  52. BIN
      src/assets/images/mark/outside/mhf.png
  53. BIN
      src/assets/images/mark/outside/pmc.png
  54. BIN
      src/assets/images/mark/outside/ys.png
  55. BIN
      src/assets/images/power.png
  56. BIN
      src/assets/mesh/mark/inside/jl/JL.bin
  57. 130
      src/assets/mesh/mark/inside/jl/JL.gltf
  58. 5
      src/assets/mesh/mark/inside/jl/JL.gltf.manifest
  59. BIN
      src/assets/mesh/mark/inside/jl/JingLi.png
  60. BIN
      src/assets/mesh/mark/inside/zg/ZG.bin
  61. 278
      src/assets/mesh/mark/inside/zg/ZG.gltf
  62. 5
      src/assets/mesh/mark/inside/zg/ZG.gltf.manifest
  63. BIN
      src/assets/mesh/mark/inside/zg/ZhuGuanBody.jpg
  64. BIN
      src/assets/mesh/mark/inside/zg/ZhuGuanHair.png
  65. BIN
      src/assets/mesh/mark/inside/zg/ZhuGuanHead.jpg
  66. BIN
      src/assets/mesh/mark/other/gk/FuZong.jpg
  67. BIN
      src/assets/mesh/mark/other/gk/GK.bin
  68. 130
      src/assets/mesh/mark/other/gk/GK.gltf
  69. 5
      src/assets/mesh/mark/other/gk/GK.gltf.manifest
  70. BIN
      src/assets/mesh/mark/other/jca/JCA.bin
  71. 461
      src/assets/mesh/mark/other/jca/JCA.gltf
  72. 5
      src/assets/mesh/mark/other/jca/JCA.gltf.manifest
  73. BIN
      src/assets/mesh/mark/other/jca/JiaoCheA.jpg
  74. BIN
      src/assets/mesh/mark/other/wz/WZ.bin
  75. 114
      src/assets/mesh/mark/other/wz/WZ.gltf
  76. 5
      src/assets/mesh/mark/other/wz/WZ.gltf.manifest
  77. BIN
      src/assets/mesh/mark/outside/ga/GA.bin
  78. 130
      src/assets/mesh/mark/outside/ga/GA.gltf
  79. 5
      src/assets/mesh/mark/outside/ga/GA.gltf.manifest
  80. BIN
      src/assets/mesh/mark/outside/ga/MinJing_Color.png
  81. BIN
      src/assets/mesh/mark/outside/jc/JC.bin
  82. 642
      src/assets/mesh/mark/outside/jc/JC.gltf
  83. 5
      src/assets/mesh/mark/outside/jc/JC.gltf.manifest
  84. BIN
      src/assets/mesh/mark/outside/jc/Jiaojingzhihuiche.jpg
  85. BIN
      src/assets/mesh/mark/outside/jhc/JHC.bin
  86. 663
      src/assets/mesh/mark/outside/jhc/JHC.gltf
  87. 5
      src/assets/mesh/mark/outside/jhc/JHC.gltf.manifest
  88. BIN
      src/assets/mesh/mark/outside/jhc/jiuhuchecolor.jpg
  89. BIN
      src/assets/mesh/mark/outside/jj/JJ.bin
  90. 205
      src/assets/mesh/mark/outside/jj/JJ.gltf
  91. 5
      src/assets/mesh/mark/outside/jj/JJ.gltf.manifest
  92. BIN
      src/assets/mesh/mark/outside/jj/JiaoJing.jpg
  93. BIN
      src/assets/mesh/mark/outside/jj/JiaoJingMaoZi.jpg
  94. BIN
      src/assets/mesh/mark/outside/mhf/Boots_AlbedoTransparency.jpg
  95. BIN
      src/assets/mesh/mark/outside/mhf/BunkerClothing_AlbedoTransparency.png
  96. BIN
      src/assets/mesh/mark/outside/mhf/Head_AlbedoTransparency.jpg
  97. BIN
      src/assets/mesh/mark/outside/mhf/Helmet_AlbedoTransparency.jpg
  98. BIN
      src/assets/mesh/mark/outside/mhf/MHF.bin
  99. 668
      src/assets/mesh/mark/outside/mhf/MHF.gltf
  100. 5
      src/assets/mesh/mark/outside/mhf/MHF.gltf.manifest
  101. Some files were not shown because too many files have changed in this diff Show More

24
src/app/babylon/controller/config-manager.ts

@ -128,22 +128,30 @@ export class ConfigManager {
static s_markName = new Map<MarkType, string>([
[MarkType.SYD, "伤员"],
[MarkType.H, "火"],
[MarkType.TPH, "突破火"],
[MarkType.SNH, "室内火"],
[MarkType.YWA, "烟雾"],
[MarkType.YWB, "烟雾"],
[MarkType.YWC, "烟雾"],
[MarkType.MHF, "灭火服"],
[MarkType.DT, "歹徒"],
[MarkType.LYX, "漏油(小)"],
[MarkType.LYD, "漏油(大)"],
[MarkType.H, "火(大)"],
[MarkType.SNH, "火(小)"],
[MarkType.YWA, "烟雾(大)"],
[MarkType.YWB, "烟雾(小)"],
[MarkType.MHF, "消防员"],
[MarkType.PMC, "泡沫车"],
[MarkType.GA, "公安"],
[MarkType.JJ, "交警"],
[MarkType.YS, "医生"],
[MarkType.JHC, "救护车"],
[MarkType.JC, "警车"],
[MarkType.GK, "顾客"],
[MarkType.JCA, "轿车"],
[MarkType.JL, "经理"],
[MarkType.ZG, "主管"],
[MarkType.SYY, "收银员"],
[MarkType.JYY, "加油员"],
[MarkType.XYY, "卸油员"],
[MarkType.XFSD, "消防沙(堆)"],
[MarkType.XFSQ, "消防沙(圈)"],
[MarkType.XFT, "消防桶"],
[MarkType.JJX, "警戒线"],
[MarkType.JGLX, "进攻路线"],
[MarkType.CT, "撤退"],
@ -172,7 +180,7 @@ export class ConfigManager {
*/
static getMarkModelPath(pos: MarkTagPos, type: MarkType): string {
let result = ConfigManager.c_resPath_assetsRoot + "mesh/mark/" + pos.toLocaleLowerCase() + "/" + type.toLocaleLowerCase() + "/";
let result = "mesh/mark/" + pos.toLocaleLowerCase() + "/" + type.toLocaleLowerCase() + "/";
return result;
}

2
src/app/babylon/controller/inputController.ts

@ -289,11 +289,9 @@ export class InputController {
// 可以旋转
public CanRotateSelf(): boolean {
return this.markType != MarkType.H
&& this.markType != MarkType.TPH
&& this.markType != MarkType.SNH
&& this.markType != MarkType.YWA
&& this.markType != MarkType.YWB
&& this.markType != MarkType.YWC
&& this.markType != MarkType.JJX
// && this.markType != MarkType.SD
&& this.markType != MarkType.JGLX

4
src/app/babylon/controller/mode-manager.ts

@ -23,12 +23,12 @@ export class ModeManager {
/**
*
*/
public static s_isMakeMode = false;
public static s_isMakeMode = true;
/**
*
*/
public static isDebug = false;
public static isDebug = true;

2
src/app/babylon/controller/scene-manager.ts

@ -516,11 +516,9 @@ export class SceneManager {
modelInfo = new ModelInfo_mark_multiArrow(modelData as MarkData, null, defaultMesh, null, isNew);
break;
case MarkType.H:
case MarkType.TPH:
case MarkType.SNH:
case MarkType.YWA:
case MarkType.YWB:
case MarkType.YWC:
modelInfo = new ModelInfo_mark_particle(modelData as MarkData, null, defaultMesh, null, isNew);
break;

6
src/app/babylon/model/data/institution/facility/property-data/in/property-data-jyj.ts

@ -12,6 +12,8 @@ export class PropertyData_JYJ extends PropertyData_Base {
oilGunNum: string = ""; //油枪数量
oilProductNo: string = ""; //油品品号
oilPumpType: string = ""; //油泵类型
flow: string = ""; //流量
power: string = ""; //功率
constructor(key: string, brand: string, superBrand: string, oilGunNum: string, oilProductNo: string, oilPumpType: string) {
super(key, FacilityType.JY_JYJ);
@ -21,11 +23,15 @@ export class PropertyData_JYJ extends PropertyData_Base {
this.oilGunNum = oilGunNum
this.oilProductNo = oilProductNo
this.oilPumpType = oilPumpType
this.flow = "0.5kg/s"
this.power = "1kw"
}
clone(key: string) {
let result = new PropertyData_JYJ(key, this.brand, this.superBrand, this.oilGunNum, this.oilProductNo, this.oilPumpType);
result.name = this.name;
result.flow = this.flow;
result.power = this.power;
return result;
}

8
src/app/babylon/model/data/mark/all-mark-data.ts

@ -45,15 +45,13 @@ export class AllMarkData {
//灾情
let tagPos: MarkTagPos = MarkTagPos.Disaster;
AllMarkData.newMarkData(MarkType.SYD, MarkKindType.Persion, tagPos, result);
AllMarkData.newMarkData(MarkType.DY, MarkKindType.Persion, tagPos, result);
AllMarkData.newMarkData(MarkType.DT, MarkKindType.Persion, tagPos, result);
AllMarkData.newMarkData(MarkType.LYX, MarkKindType.Goods, tagPos, result);
AllMarkData.newMarkData(MarkType.LYD, MarkKindType.Goods, tagPos, result);
AllMarkData.newMarkData(MarkType.H, MarkKindType.Effect, tagPos, result, undefined, false);
AllMarkData.newMarkData(MarkType.TPH, MarkKindType.Effect, tagPos, result, undefined, false);
AllMarkData.newMarkData(MarkType.SNH, MarkKindType.Effect, tagPos, result, undefined, false);
AllMarkData.newMarkData(MarkType.YWA, MarkKindType.Effect, tagPos, result, undefined, false);
AllMarkData.newMarkData(MarkType.H, MarkKindType.Effect, tagPos, result, undefined, false);
AllMarkData.newMarkData(MarkType.YWB, MarkKindType.Effect, tagPos, result, undefined, false);
AllMarkData.newMarkData(MarkType.YWC, MarkKindType.Effect, tagPos, result, undefined, false);
AllMarkData.newMarkData(MarkType.YWA, MarkKindType.Effect, tagPos, result, undefined, false);
//外部力量
tagPos = MarkTagPos.Outside;

20
src/app/babylon/model/data/mark/mark-data.ts

@ -165,7 +165,7 @@ export enum MarkType {
/**
*
*/
DY = "DT",
DT = "DT",
/**
*
@ -178,35 +178,25 @@ export enum MarkType {
LYX = "LYX",
/**
*
*
*/
H = "H",
/**
*
*/
TPH = "TPH",
/**
*
*
*/
SNH = "SNH",
/**
* A
* A
*/
YWA = "YWA",
/**
* B
*
*/
YWB = "YWB",
/**
* C
*/
YWC = "YWC",
//==================外部力量================
/**

6
src/app/babylon/model/data/mark/mark-plan-data.ts

@ -236,10 +236,14 @@ export class MarkNodeData {
describe: string;
/**
*
*
*/
texture: string;
/**
*
*/
video: string;
constructor(id: number, name: string) {
this.id = id;

1
src/app/babylon/model/info/mark/model-info-mark.ts

@ -194,6 +194,7 @@ export class ModelInfo_mark extends ModelInfo {
* @param select
*/
onSelect(select: boolean) {
console.log("onSelect", select);
this.isSelect = select;
// this.lookAt();
if (select) {

32
src/app/babylon/model/info/mark/other/mark-plan-particle-info.ts

@ -34,39 +34,25 @@ export class ModelInfo_mark_particle extends ModelInfo_mark {
switch (this.markData.type) {
case MarkType.H:
particleJsonPath.push("assets/particlesystem/fire/fire_h_1.json");
particleJsonPath.push("assets/particlesystem/fire/fire_h_2.json");
particleJsonPath.push("assets/particlesystem/fire/fire_h_3.json");
particleJsonPath.push("assets/particlesystem/smoke/smoke_a.json");
instance.modelBox.scaling = new Vector3(300, 300, 300);
posOffset.y = 2.9 / instance.modelBox.scaling.y;
break;
case MarkType.TPH:
particleJsonPath.push("assets/particlesystem/fire/fire_tph_1.json");
particleJsonPath.push("assets/particlesystem/fire/fire_tph_2.json");
particleJsonPath.push("assets/particlesystem/fire/fire_tph_3.json");
particleJsonPath.push("assets/particlesystem/smoke/smoke_b.json");
instance.modelBox.scaling = new Vector3(300, 300, 300);
posOffset.y = 2.9 / instance.modelBox.scaling.y;
instance.modelBox.scaling = new Vector3(5, 1, 5);
posOffset.y = 0.7 / instance.modelBox.scaling.y;
break;
case MarkType.SNH:
particleJsonPath.push("assets/particlesystem/fire/fire_snh_1.json");
particleJsonPath.push("assets/particlesystem/fire/fire_snh_2.json");
particleJsonPath.push("assets/particlesystem/fire/fire_snh_3.json");
particleJsonPath.push("assets/particlesystem/smoke/smoke_snh.json");
instance.modelBox.scaling = new Vector3(300, 100, 300);
posOffset.y = 1 / instance.modelBox.scaling.y;
instance.modelBox.scaling = new Vector3(3, 1, 3);
posOffset.y = 0.2 / instance.modelBox.scaling.y;
break;
case MarkType.YWA:
particleJsonPath.push("assets/particlesystem/smoke/smoke_a.json");
instance.modelBox.scaling = new Vector3(500, 100, 500);
instance.modelBox.scaling = new Vector3(5, 1, 5);
posOffset.y = 0.1 / instance.modelBox.scaling.y;
break;
case MarkType.YWB:
particleJsonPath.push("assets/particlesystem/smoke/smoke_b.json");
instance.modelBox.scaling = new Vector3(300, 600, 300);
break;
case MarkType.YWC:
particleJsonPath.push("assets/particlesystem/smoke/smoke_c.json");
instance.modelBox.scaling = new Vector3(100, 100, 100);
particleJsonPath.push("assets/particlesystem/smoke/smoke_snh.json");
instance.modelBox.scaling = new Vector3(3, 1, 3);
posOffset.y = 0.2 / instance.modelBox.scaling.y;
break;
}

14
src/app/babylon/model/info/model/facilityinfo-tool/facility-area.ts

@ -166,6 +166,7 @@ export class AreaInfo {
showPoint(show: boolean) {
for (let i = 0; i < this.pointMesh.length; i++) {
this.pointMesh[i].showUI(show);
this.pointMesh[i].showPoint(show);
}
}
@ -365,6 +366,19 @@ export class PolygonMeshPoint {
if (this.uiRoot != null) {
this.uiRoot.isVisible = show;
}
}
/**
*
* @param show
*/
showPoint(show: boolean) {
if (this.area == null) {
return;
}
for (let i = 0; i < this.area.pointMesh.length; i++) {
this.area.pointMesh[i].mesh.setEnabled(show);
}
}

18
src/app/babylon/model/info/model/model-info-building.ts

@ -16,7 +16,7 @@ import { FacilityWindow } from "src/app/babylon/view/facility-window/facility-wi
import { BuildingType } from "../../data/institution/building/building-data";
import { FacilityPosType, ModelData_facility } from "../../data/model-data/model-data-facility";
import { FacilityPosType, FacilityType, ModelData_facility } from "../../data/model-data/model-data-facility";
import { ModelInfo_mark } from "../mark/model-info-mark";
import { ModelInfo } from "./model-info";
import { FacilityInfoByType, ModelInfo_facility } from "./model-info-facility";
@ -113,7 +113,7 @@ export class ModelInfo_building extends ModelInfo {
border.addControl(this.uiIconBtn);
this.uiIconBtn.width = '100px';
this.uiIconBtn.height = '22px';
this.uiIconBtn.background = "#415094";
this.uiIconBtn.background = BabylonUIStyleTool.c_color_blueBtnBg;
this.uiIconBtn.color = "white";
this.uiIconBtn.thickness = 0;
this.uiIconBtn.textBlock.fontSize = 12;
@ -270,5 +270,19 @@ export class ModelInfo_building extends ModelInfo {
}
}
/**
*
* @param type
*/
getFacilityInfoByType(type: FacilityType) {
let result: ModelInfo_facility[] = [];
for (let i = 0; i < this.facilityInfos.length; i++) {
if (this.facilityInfos[i].type == type) {
result = this.facilityInfos[i].facilityInfo;
}
}
return result;
}
}

55
src/app/babylon/model/info/model/model-info-facility.ts

@ -1,7 +1,8 @@
import { AbstractMesh, Color3, EventState, Mesh } from "@babylonjs/core";
import { Button, Control, Ellipse, Rectangle, Vector2WithInfo } from "@babylonjs/gui";
import { Button, Control, Ellipse, Rectangle, TextBlock, Vector2WithInfo } from "@babylonjs/gui";
import { ConfigManager } from "src/app/babylon/controller/config-manager";
import { SceneManager } from "src/app/babylon/controller/scene-manager";
import { UIManager } from "src/app/babylon/controller/ui-manager";
import { BabylonUIStyleTool } from "src/app/babylon/tool/babylon-ui-style-tool";
import { SpeakingTool } from "src/app/babylon/tool/speaking-tool";
import { TsTool } from "src/app/babylon/tool/ts-tool";
@ -27,6 +28,9 @@ export class ModelInfo_facility extends ModelInfo {
areaInfo: AreaInfo;//区域信息
isNew: boolean;//是否是新建
nameUIRoot: Rectangle;
nameText: TextBlock;
constructor(
key: string,
@ -62,8 +66,8 @@ export class ModelInfo_facility extends ModelInfo {
this.uiFollowRoot.addControl(this.ui_select);
this.ui_select.background = BabylonUIStyleTool.c_color_3d_blue;
this.ui_select.thickness = 0;
this.ui_select.width = 0.95;
this.ui_select.height = 0.95;
this.ui_select.width = 0.8;
this.ui_select.height = 0.8;
this.ui_select.shadowColor = BabylonUIStyleTool.c_color_3d_blue;
this.ui_select.shadowBlur = 3;
this.ui_select.isVisible = false;
@ -104,6 +108,43 @@ export class ModelInfo_facility extends ModelInfo {
}
/**
* UI
* @param show
*/
showNameUI(show: boolean) {
let data = this.modelData as ModelData_facility;
if (this.nameUIRoot == null) {
this.nameUIRoot = new Rectangle("nameRoot");
this.nameUIRoot.thickness = 0;
this.nameUIRoot.background = BabylonUIStyleTool.c_color_blueBtnBg;
this.nameUIRoot.color = BabylonUIStyleTool.c_color_blue;//"#0CB7F7";
this.nameUIRoot.alpha = 0.9;
UIManager.Instance.uiRoot.addControl(this.nameUIRoot);
this.nameUIRoot.width = '50px';
this.nameUIRoot.height = '26px';
this.nameUIRoot.thickness = 2;
this.nameUIRoot.linkWithMesh(this.head);
this.nameText = new TextBlock("name", "");
this.nameUIRoot.addControl(this.nameText);
this.nameText.color = "white";
this.nameText.resizeToFit = true;
this.nameText.top = "2px";
this.nameText.fontSize = 16;
this.nameText.textVerticalAlignment = Control.VERTICAL_ALIGNMENT_CENTER;
}
this.nameText.text = data.propertyData.name;
this.nameUIRoot.isVisible = show;
let instance = this;
setTimeout(() => {
instance.nameUIRoot.widthInPixels = instance.nameText.widthInPixels + 10;
instance.nameUIRoot.heightInPixels = instance.nameText.heightInPixels + 5;
}, 100);
}
@ -165,7 +206,6 @@ export class ModelInfo_facility extends ModelInfo {
setIconEnable(enable: boolean) {
this.showFollowUI(enable);
if (!enable)//还原选中状态
{
this.setSelectEnable(false);
@ -207,6 +247,13 @@ export class ModelInfo_facility extends ModelInfo {
this.areaInfo.dispose();
}
if (this.nameUIRoot != null) {
this.nameUIRoot.dispose();
this.nameUIRoot = null;
this.nameText = null;
}
super.dispose(disposeMesh);
}
}

1
src/app/babylon/tool/babylon-ui-style-tool.ts

@ -11,6 +11,7 @@ import { MyInputText } from "./babylon-tool";
export class BabylonUIStyleTool {
static c_color_blue: string = "#0080FF";//普通蓝色,用于选中、确定等正面风格
static c_color_blueBtnBg: string = "#415094";//深蓝色,用于文本按钮背景色
static c_color_gray: string = "#E8ECF1";//普通灰色,用于取消、后退、输入背景等
static c_color_black: string = "black";//黑色
static c_color_blueBg: string = "#001121";//深蓝,用于长存界面的背景

15
src/app/babylon/view/building-window/building-window.ts

@ -20,7 +20,7 @@ import { BuildingInfo_ChemicalPlant } from "../../model/info/building/building-i
import { BuildingInfo_Environment } from "../../model/info/building/building-info-environment";
import { BuildingInfo_Normal } from "../../model/info/building/building-info-normal";
import { ModelInfo_building } from "../../model/info/model/model-info-building";
import { FacilityInfoByType } from "../../model/info/model/model-info-facility";
import { FacilityInfoByType, ModelInfo_facility } from "../../model/info/model/model-info-facility";
import { BabylonTool } from "../../tool/babylon-tool";
import { TsTool } from "../../tool/ts-tool";
import { FacilityInfoInSceneWindow } from "../facilityinfoinscene-window/facilityinfoinscene-window";
@ -374,6 +374,7 @@ export class BuildingWindow extends UIBase {
}
// console.log("选中建筑", modelInfo);
this.showJYZModules(JYZInfoMoudleType.JBXX, false);
this.showJYZModules(JYZInfoMoudleType.AQSS, false);
this.showJYZModules(JYZInfoMoudleType.YQHSGX, false);
this.showJYZModules(JYZInfoMoudleType.SYG, false);
@ -792,6 +793,18 @@ export class BuildingWindow extends UIBase {
}
}
/**
* UI
*/
let isShowNameUI_JYJ_YG = show && (type == JYZInfoMoudleType.SYG || type == JYZInfoMoudleType.YQHSGX);
let showNameFacilitys: ModelInfo_facility[] = [];
showNameFacilitys = showNameFacilitys.concat(this.currentBuidngItem.buildingInfo.ModelInfo.getFacilityInfoByType(FacilityType.JY_JYJ));
showNameFacilitys = showNameFacilitys.concat(this.currentBuidngItem.buildingInfo.ModelInfo.getFacilityInfoByType(FacilityType.JY_YG));
for (let i = 0; i < showNameFacilitys.length; i++) {
showNameFacilitys[i].showNameUI(isShowNameUI_JYJ_YG);
}
if (show) {
this.currentJYZInfoMoudleType = type;
}

6
src/app/babylon/view/facility-window/facility-window.ts

@ -259,7 +259,11 @@ export class FacilityWindow extends UIBase {
}
}
else { //右键取消
instance.three.unSelectBottomIcon();
if (!SceneManager.s_isPointerDrag)//不是拖拽
{
instance.three.unSelectBottomIcon();
}
}
break;

23
src/app/babylon/view/mark-window/mark-window.ts

@ -3,6 +3,7 @@ import { AbstractMesh, Vector3 } from "@babylonjs/core";
import { PointerEventTypes, PointerInfo } from "@babylonjs/core/Events/pointerEvents";
import { EventState, Observer } from "@babylonjs/core/Misc/observable";
import { classToClass } from "class-transformer";
import { PlanComponent } from "src/app/pages/plan/plan.component";
import { DataManager } from "../../controller/data-manager";
import { EventManager } from "../../controller/event-manager/event-manager";
import { Event_GetAllMarkPlanData } from "../../controller/event-manager/events/event-get-markplandata-success";
@ -501,11 +502,11 @@ export class MarkWindow extends UIBase {
// markInfo.markData //通知前端 最后需要其调用 selectMarkData
selectMarkDataFrom3d(markInfo: ModelInfo_mark, select: boolean) {
if (select) {
//ThreeDimensionalHomeComponent.instance.selectSandTableMark(markInfo.markData, select)
//PlanComponent.instance.selectSandTableMark(markInfo.markData, select)
}
else {
if (markInfo != null) {
//ThreeDimensionalHomeComponent.instance.selectSandTableMark(markInfo.markData, select)
//PlanComponent.instance.selectSandTableMark(markInfo.markData, select)
}
}
@ -748,6 +749,7 @@ export class MarkWindow extends UIBase {
*/
onPointerObservable(eventData: PointerInfo, eventState: EventState) {
let instance = MarkWindow.instance;
if (!instance.isShow) {
return;
}
@ -830,23 +832,24 @@ export class MarkWindow extends UIBase {
break;
}
if (pickMesh != null) {
//创建标绘物
if (readyCreateMark) {
instance.createNewMark(pickPos, instance.currentMarkDataPrefab, true);
}
else if (pickMesh != null) {
//是标绘物
let l_markInfo = instance.getMarkInfoFromMesh(eventData.pickInfo.pickedMesh);
if (l_markInfo != null) {
if (readyCreateMark == true) //水带的起点是可以在分水器上的
{
readyCreateMark = false;
}
if (eventData.type == PointerEventTypes.POINTERDOUBLETAP) {
//双击标绘物,打开任务界面
console.log("打开属性面板");
instance.openProperty(l_markInfo);
}
else if (eventData.type == PointerEventTypes.POINTERDOWN) {
if (eventData.event.button == 0)//左键
{
if (!instance.isCreateMultiPointMark()) {
console.log("选中标绘物", l_markInfo);
instance.selectMarkDataFrom3d(l_markInfo, true);
}
}
@ -874,9 +877,6 @@ export class MarkWindow extends UIBase {
}
}
if (readyCreateMark) {
instance.createNewMark(pickPos, instance.currentMarkDataPrefab, true);
}
}
@ -969,6 +969,7 @@ export class MarkWindow extends UIBase {
}
})
console.log(mesh, "是标绘物", result);
return result;
}

51
src/app/pages/plan/plan.component.html

@ -2,7 +2,17 @@
<div class="content" id="threeDimensional">
<div class="header">
<button *ngFor="let item of allFence; let key = index;" [ngClass]="{'selectFence': selectFence === key}" (click)="toggleHeaderFence(key)">{{item}}</button>
<button *ngFor="let item of allFence; let key = index;" [ngClass]="{'selectFence': selectFence === key}" (click)="toggleHeaderFence(key)">
<label nz-dropdown [nzDropdownMenu]="menu" [nzDisabled]="item != '基本信息'">{{item}}<i nz-icon nzType="caret-up" nzTheme="outline" *ngIf="key === 0"></i></label>
</button>
<nz-dropdown-menu #menu="nzDropdownMenu">
<ul nz-menu class="dropDown">
<li nz-menu-item><label nz-checkbox>毗邻</label></li>
<li nz-menu-item><label nz-checkbox>区域</label></li>
<li nz-menu-item><label nz-checkbox>图片</label></li>
<li nz-menu-item><label nz-checkbox>点位</label></li>
</ul>
</nz-dropdown-menu>
<div class="rightFence">
<img src="../../../assets/images/awningShow.png" [hidden]="!isOpenAwning" (click)="toggleHeaderAwning(false)">
<img src="../../../assets/images/awningHide.png" [hidden]="isOpenAwning" (click)="toggleHeaderAwning(true)">
@ -47,6 +57,45 @@
</div>
<!-- 左侧建筑栏 -->
<!-- 右侧属性栏 -->
<div class="nature" *ngIf="isShowNature && selectFence === 0 && beforeOnePropertyData && beforeOnePropertyData.getPropertyData()" [ngStyle]="{'right': editMode? '5%' : null}">
<div class="natureHeader"><i nz-icon nzType="close-circle" nzTheme="outline" title="关闭" (click)="isShowNature = false;"></i></div>
<div class="natureContent" *ngIf="beforeOnePropertyData.getPropertyData().info != undefined">
<div class="natureTitle">详情</div>
<div><textarea [(ngModel)]="beforeOnePropertyData.getPropertyData().info"></textarea></div>
</div>
<div class="natureContent" *ngIf="beforeOnePropertyData.getPropertyData().img != undefined">
<div class="natureTitle">图片</div>
<div class="natureImg" *ngIf="beforeOnePropertyData.getPropertyData().img"><img [src]="beforeOnePropertyData.getPropertyData().img"></div>
<div><a href="javascript:;" class="bottomPlanUpload natureUpload"><input type="file"><i nz-icon nzType="plus" nzTheme="outline"></i></a></div>
</div>
</div>
<div class="nature natureLook" *ngIf="isShowNature && (selectFence === 1 || selectFence === 2) && beforeOnePropertyData" [ngStyle]="{'top': naturePosition.top,'right': naturePosition.right}">
<div *ngIf="selectFence === 1">
<div class="natureTitle">{{beforeOnePropertyData.getPropertyData().name}}</div>
<div class="flowPower">
<div>
<img src="../../../assets/images/flow.png">
<label><p>流量</p><p><input type="text" [(ngModel)]="beforeOnePropertyData.getPropertyData().flow" [disabled]="!editMode"></p></label>
</div>
<div>
<img src="../../../assets/images/power.png">
<label><p>功率</p><p><input type="text" [(ngModel)]="beforeOnePropertyData.getPropertyData().power" [disabled]="!editMode"></p></label>
</div>
</div>
<div class="everyNature"><span>品牌 :</span><label>{{beforeOnePropertyData.getPropertyData().brand}}</label></div>
<div class="everyNature"><span>油枪数量 :</span><label>{{beforeOnePropertyData.getPropertyData().oilGunNum}}</label></div>
<div class="everyNature"><span>油品品号 :</span><label>{{beforeOnePropertyData.getPropertyData().oilProductNo}}</label></div>
</div>
<div *ngIf="selectFence === 2">
<div class="natureTitle">{{beforeOnePropertyData.getPropertyData().name}}</div>
<div class="everyNature"><span>油品品号 :</span><label>{{beforeOnePropertyData.getPropertyData().oilProductNo}}</label></div>
<div class="everyNature"><span>油罐容积 :</span><label>{{beforeOnePropertyData.getPropertyData().oilTankVolume}}</label></div>
<div class="everyNature"><span>安全容积 :</span><label>{{beforeOnePropertyData.getPropertyData().safeVolume}}</label></div>
</div>
</div>
<!-- 右侧属性栏 -->
<!-- 右侧图标栏 -->
<div class="rightIcons" *ngIf="editMode && (selectFence === 0 || selectFence === 7)" [ngClass]="{'publicMoveUp': selectFence === 7}" [ngStyle]="{'width': selectFence === 0? '60px' : null}">
<div class="bottomCenter" id="bottomCenter">

48
src/app/pages/plan/plan.component.scss

@ -48,6 +48,7 @@
cursor: pointer;
margin: 7px 10px 0px;
padding: 0;
label{ display: block; width: 100%; height: 100%; cursor: pointer; .anticon{ font-size: 14px; margin-left: 1px; } }
}
.selectFence { background: linear-gradient(180deg, #000D21 0%, #00404D 49%, #23D9FF 100%); } //选种样式
.rightFence{
@ -178,6 +179,51 @@
transition: margin-left 0.5s;
}
//右侧属性栏
.nature{
width: 230px;
position: absolute;
top: 1%;
right: 1%;
color: #C4E2FC;
font-size: 14px;
background: linear-gradient(360deg, #000D21 0%, rgba(0, 59, 110, 0.8) 100%);
.natureHeader{ text-align: right; height: 10px; .anticon{ font-size: 18px; margin: 5px 5px 0 0; } }
.natureContent{
box-sizing: border-box;
padding: 0 20px;
margin-bottom: 5px;
.natureTitle{ margin-bottom: 5px; height: 20px; line-height: 20px; }
textarea{ width: 100%; height: 75px; background: rgba(145, 204, 255, 0.41); border: 1px solid #91CCFF; padding: 0; resize: none; outline: none; }
.natureImg{ margin-bottom: 5px; img{ width: auto; height: auto; max-width: 100%; } }
.natureUpload{ margin: 0; text-align: center; width: 50px; height: 50px; line-height: 50px; }
}
}
.natureLook{
width: auto;
min-width: 170px;
box-sizing: border-box;
padding: 20px;
color: #fff;
.flowPower{
width: 200px;
height: 50px;
display: flex;
font-size: 12px;
margin-bottom: 8px;
div{ flex: 1; line-height: 50px; margin-left: -10px; }
img { width: 40%; height: auto; vertical-align: top; }
label { display: inline-block; width: 60%; height: 100%; overflow: hidden; }
p{ width: 100%; height: 25px; line-height: 25px; margin: 0; }
input{ border: none; outline: none; background-color: transparent; width: 100%; height: 100%; }
}
.everyNature{
margin-bottom: 8px;
font-size: 12px;
span{ margin-right: 10px; }
}
}
//右侧图标栏
.rightIcons{
width: 100px;
@ -286,7 +332,7 @@
flex: 1;
font-size: 14px;
p{ margin: 0; height: 20px; line-height: 18px; }
textarea{ width: 100%; height: 50px; background: rgba(145, 204, 255, 0.41); border: 1px solid #91CCFF; padding: 0; resize:none; outline: none; }
textarea{ width: 100%; height: 50px; background: rgba(145, 204, 255, 0.41); border: 1px solid #91CCFF; padding: 0; resize: none; outline: none; }
}
.planHeaderImg{ width: 100px; height: 100%; text-align: center; }
.planHeaderVideo{ width: 120px; height: 100%; text-align: center; }

12
src/app/pages/plan/plan.component.ts

@ -116,6 +116,7 @@ export class PlanComponent implements OnInit {
this.beforeOneSatus = StatusManager.getStatus<BuildingStatus>(BuildingStatus);
let buildingWindow: BuildingWindow = this.beforeOneSatus.buildingWindow;
let fenceType: JYZInfoMoudleType = this.getFenceType(type)
this.isShowNature = false //隐藏属性栏
if (this.selectFence != type) {
this.isShowChildComponent && this.leftDomain && type != 4 ? this.leftDomain.initComponent(type) : null; //手动初始化子组件
this.selectFence = type
@ -300,11 +301,15 @@ export class PlanComponent implements OnInit {
e == 0 ? bootomDiv.scrollLeft = bootomDiv.scrollLeft + 50 : bootomDiv.scrollLeft = bootomDiv.scrollLeft - 50
}
isShowNature: boolean = false; //显隐设备 属性栏
beforeOnePropertyData: FacilityInfoUIItem = null; //当前选择 设备
naturePosition: naturePosition = new naturePosition(); //设备栏 定位位置
//选中 设备
selectProperty(e: FacilityInfoUIItem) {
this.isShowNature = true
this.beforeOnePropertyData = e
console.log(e.getPropertyData(),'选中设备')
if (this.isShowChildComponent && this.leftDomain) {
this.leftDomain.selectFacilityId = e.getID()
}
@ -383,9 +388,14 @@ export class PlanComponent implements OnInit {
this.isShowLoading = show;
}
}
//属性栏 定位
export class naturePosition {
top: string = "1%"
left: string = "50%"
right: string = "5%"
}
// 处置预案 所有图标
export class planIcons {
iconsName: string[] = ["灾情", "内部力量", "外部力量", "其他"]

BIN
src/assets/images/flow.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

BIN
src/assets/images/mark/disaster/dt.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

BIN
src/assets/images/mark/disaster/h.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

BIN
src/assets/images/mark/disaster/lyd.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

BIN
src/assets/images/mark/disaster/lyx.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

BIN
src/assets/images/mark/disaster/snh.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

BIN
src/assets/images/mark/disaster/syd.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

BIN
src/assets/images/mark/disaster/tph.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

BIN
src/assets/images/mark/disaster/ywa.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

BIN
src/assets/images/mark/disaster/ywb.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

BIN
src/assets/images/mark/disaster/ywc.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

BIN
src/assets/images/mark/inside/jl.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
src/assets/images/mark/inside/jyy.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

BIN
src/assets/images/mark/inside/syy.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

BIN
src/assets/images/mark/inside/xfsd.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

BIN
src/assets/images/mark/inside/xfsq.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

BIN
src/assets/images/mark/inside/xft.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

BIN
src/assets/images/mark/inside/xyy.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

BIN
src/assets/images/mark/inside/zg.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

BIN
src/assets/images/mark/other/ct.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
src/assets/images/mark/other/gk.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

BIN
src/assets/images/mark/other/jca.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

BIN
src/assets/images/mark/other/jglx.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
src/assets/images/mark/other/jjx.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 991 B

BIN
src/assets/images/mark/other/qysda.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

BIN
src/assets/images/mark/other/qysdb.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

BIN
src/assets/images/mark/other/wz.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

BIN
src/assets/images/mark/outside/ga.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

BIN
src/assets/images/mark/outside/jc.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

BIN
src/assets/images/mark/outside/jhc.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

BIN
src/assets/images/mark/outside/jj.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

BIN
src/assets/images/mark/outside/mhf.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

BIN
src/assets/images/mark/outside/pmc.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

BIN
src/assets/images/mark/outside/ys.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

BIN
src/assets/images/power.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
src/assets/mesh/mark/inside/jl/JL.bin

Binary file not shown.

130
src/assets/mesh/mark/inside/jl/JL.gltf

@ -0,0 +1,130 @@
{
"asset" : {
"generator" : "Khronos glTF Blender I/O v1.6.16",
"version" : "2.0"
},
"extensionsUsed" : [
"KHR_draco_mesh_compression"
],
"extensionsRequired" : [
"KHR_draco_mesh_compression"
],
"scene" : 0,
"scenes" : [
{
"name" : "Scene",
"nodes" : [
0
]
}
],
"nodes" : [
{
"mesh" : 0,
"name" : "JingLi"
}
],
"materials" : [
{
"doubleSided" : true,
"name" : "JingLi",
"pbrMetallicRoughness" : {
"baseColorTexture" : {
"index" : 0
},
"metallicFactor" : 0
}
}
],
"meshes" : [
{
"name" : "JingLi",
"primitives" : [
{
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 0,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 3,
"material" : 0,
"mode" : 4
}
]
}
],
"textures" : [
{
"sampler" : 0,
"source" : 0
}
],
"images" : [
{
"mimeType" : "image/png",
"name" : "JingLi",
"uri" : "JingLi.png"
}
],
"accessors" : [
{
"componentType" : 5126,
"count" : 2265,
"max" : [
0.294888436794281,
1.8255571126937866,
0.1540677845478058
],
"min" : [
-0.2899564504623413,
-0.002153639914467931,
-0.1543898731470108
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 2265,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 2265,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 6720,
"type" : "SCALAR"
}
],
"bufferViews" : [
{
"buffer" : 0,
"byteLength" : 18953,
"byteOffset" : 0
}
],
"samplers" : [
{
"magFilter" : 9729,
"minFilter" : 9987
}
],
"buffers" : [
{
"byteLength" : 18956,
"uri" : "JL.bin"
}
]
}

5
src/assets/mesh/mark/inside/jl/JL.gltf.manifest

@ -0,0 +1,5 @@
{
"version" : 1,
"enableSceneOffline" : true,
"enableTexturesOffline" : true
}

BIN
src/assets/mesh/mark/inside/jl/JingLi.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 110 KiB

BIN
src/assets/mesh/mark/inside/zg/ZG.bin

Binary file not shown.

278
src/assets/mesh/mark/inside/zg/ZG.gltf

@ -0,0 +1,278 @@
{
"asset" : {
"generator" : "Khronos glTF Blender I/O v1.6.16",
"version" : "2.0"
},
"extensionsUsed" : [
"KHR_draco_mesh_compression"
],
"extensionsRequired" : [
"KHR_draco_mesh_compression"
],
"scene" : 0,
"scenes" : [
{
"name" : "Scene",
"nodes" : [
0
]
}
],
"nodes" : [
{
"mesh" : 0,
"name" : "ZhuGuan"
}
],
"materials" : [
{
"doubleSided" : true,
"name" : "ZhuGuanHead",
"pbrMetallicRoughness" : {
"baseColorTexture" : {
"index" : 0
},
"metallicFactor" : 0
}
},
{
"doubleSided" : true,
"name" : "ZhuGuanBody",
"pbrMetallicRoughness" : {
"baseColorTexture" : {
"index" : 1
},
"metallicFactor" : 0
}
},
{
"doubleSided" : true,
"name" : "ZhuGuanHair",
"pbrMetallicRoughness" : {
"baseColorTexture" : {
"index" : 2
},
"metallicFactor" : 0
}
}
],
"meshes" : [
{
"name" : "ZhuGuan",
"primitives" : [
{
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 0,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 3,
"material" : 0,
"mode" : 4
},
{
"attributes" : {
"POSITION" : 4,
"NORMAL" : 5,
"TEXCOORD_0" : 6
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 1,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 7,
"material" : 1,
"mode" : 4
},
{
"attributes" : {
"POSITION" : 8,
"NORMAL" : 9,
"TEXCOORD_0" : 10
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 2,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 11,
"material" : 2,
"mode" : 4
}
]
}
],
"textures" : [
{
"sampler" : 0,
"source" : 0
},
{
"sampler" : 0,
"source" : 1
},
{
"sampler" : 0,
"source" : 2
}
],
"images" : [
{
"mimeType" : "image/jpeg",
"name" : "ZhuGuanHead",
"uri" : "ZhuGuanHead.jpg"
},
{
"mimeType" : "image/jpeg",
"name" : "ZhuGuanBody",
"uri" : "ZhuGuanBody.jpg"
},
{
"mimeType" : "image/png",
"name" : "ZhuGuanHair",
"uri" : "ZhuGuanHair.png"
}
],
"accessors" : [
{
"componentType" : 5126,
"count" : 1197,
"max" : [
0.09228011965751648,
1.8159304857254028,
0.14006438851356506
],
"min" : [
-0.09851814061403275,
1.4478205442428589,
-0.08274100720882416
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 1197,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 1197,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 5505,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 2476,
"max" : [
0.29248711466789246,
1.6499481201171875,
0.1415385901927948
],
"min" : [
-0.2962494194507599,
-0.0008729100227355957,
-0.18568363785743713
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 2476,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 2476,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 10347,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 934,
"max" : [
0.08727983385324478,
1.8330750465393066,
0.12628629803657532
],
"min" : [
-0.09116833657026291,
1.6331498622894287,
-0.09298797696828842
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 934,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 934,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 2481,
"type" : "SCALAR"
}
],
"bufferViews" : [
{
"buffer" : 0,
"byteLength" : 10664,
"byteOffset" : 0
},
{
"buffer" : 0,
"byteLength" : 20262,
"byteOffset" : 10664
},
{
"buffer" : 0,
"byteLength" : 9127,
"byteOffset" : 30928
}
],
"samplers" : [
{
"magFilter" : 9729,
"minFilter" : 9987
}
],
"buffers" : [
{
"byteLength" : 40056,
"uri" : "ZG.bin"
}
]
}

5
src/assets/mesh/mark/inside/zg/ZG.gltf.manifest

@ -0,0 +1,5 @@
{
"version" : 1,
"enableSceneOffline" : true,
"enableTexturesOffline" : true
}

BIN
src/assets/mesh/mark/inside/zg/ZhuGuanBody.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

BIN
src/assets/mesh/mark/inside/zg/ZhuGuanHair.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 250 KiB

BIN
src/assets/mesh/mark/inside/zg/ZhuGuanHead.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

BIN
src/assets/mesh/mark/other/gk/FuZong.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 89 KiB

BIN
src/assets/mesh/mark/other/gk/GK.bin

Binary file not shown.

130
src/assets/mesh/mark/other/gk/GK.gltf

@ -0,0 +1,130 @@
{
"asset" : {
"generator" : "Khronos glTF Blender I/O v1.6.16",
"version" : "2.0"
},
"extensionsUsed" : [
"KHR_draco_mesh_compression"
],
"extensionsRequired" : [
"KHR_draco_mesh_compression"
],
"scene" : 0,
"scenes" : [
{
"name" : "Scene",
"nodes" : [
0
]
}
],
"nodes" : [
{
"mesh" : 0,
"name" : "FZ"
}
],
"materials" : [
{
"doubleSided" : true,
"name" : "FuZong",
"pbrMetallicRoughness" : {
"baseColorTexture" : {
"index" : 0
},
"metallicFactor" : 0
}
}
],
"meshes" : [
{
"name" : "FuZong",
"primitives" : [
{
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 0,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 3,
"material" : 0,
"mode" : 4
}
]
}
],
"textures" : [
{
"sampler" : 0,
"source" : 0
}
],
"images" : [
{
"mimeType" : "image/jpeg",
"name" : "FuZong",
"uri" : "FuZong.jpg"
}
],
"accessors" : [
{
"componentType" : 5126,
"count" : 3206,
"max" : [
0.2624218761920929,
1.6847517490386963,
0.1686718910932541
],
"min" : [
-0.26234373450279236,
2.593356475699693e-05,
-0.16867190599441528
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 3206,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 3206,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 11262,
"type" : "SCALAR"
}
],
"bufferViews" : [
{
"buffer" : 0,
"byteLength" : 25392,
"byteOffset" : 0
}
],
"samplers" : [
{
"magFilter" : 9729,
"minFilter" : 9987
}
],
"buffers" : [
{
"byteLength" : 25392,
"uri" : "GKbin"
}
]
}

5
src/assets/mesh/mark/other/gk/GK.gltf.manifest

@ -0,0 +1,5 @@
{
"version" : 1,
"enableSceneOffline" : true,
"enableTexturesOffline" : true
}

BIN
src/assets/mesh/mark/other/jca/JCA.bin

Binary file not shown.

461
src/assets/mesh/mark/other/jca/JCA.gltf

@ -0,0 +1,461 @@
{
"asset" : {
"generator" : "Khronos glTF Blender I/O v1.6.16",
"version" : "2.0"
},
"extensionsUsed" : [
"KHR_draco_mesh_compression"
],
"extensionsRequired" : [
"KHR_draco_mesh_compression"
],
"scene" : 0,
"scenes" : [
{
"name" : "Scene",
"nodes" : [
0,
1,
2,
3,
4
]
}
],
"nodes" : [
{
"mesh" : 0,
"name" : "FL",
"rotation" : [
0.7071068286895752,
0,
0,
0.7071068286895752
],
"scale" : [
0.009999999776482582,
0.009999999776482582,
0.009999999776482582
],
"translation" : [
-1.0985089540481567,
0.4814870059490204,
-2.133125066757202
]
},
{
"mesh" : 1,
"name" : "BL",
"rotation" : [
0.7071068286895752,
0,
0,
0.7071068286895752
],
"scale" : [
0.009999999776482582,
0.009999999776482582,
0.009999999776482582
],
"translation" : [
-1.0985089540481567,
0.4814870059490204,
1.7678910493850708
]
},
{
"mesh" : 2,
"name" : "BR",
"rotation" : [
0.7071068286895752,
0,
0,
0.7071068286895752
],
"scale" : [
0.009999999776482582,
0.009999999776482582,
0.009999999776482582
],
"translation" : [
1.1095609664916992,
0.4814870059490204,
1.7678910493850708
]
},
{
"mesh" : 3,
"name" : "FR",
"rotation" : [
0.7071068286895752,
0,
0,
0.7071068286895752
],
"scale" : [
0.009999999776482582,
0.009999999776482582,
0.009999999776482582
],
"translation" : [
1.1095609664916992,
0.4814870059490204,
-2.133125066757202
]
},
{
"mesh" : 4,
"name" : "Body",
"rotation" : [
0.7071068286895752,
0,
0,
0.7071068286895752
],
"scale" : [
0.009999999776482582,
0.009999999776482582,
0.009999999776482582
],
"translation" : [
0,
1.0828319787979126,
0
]
}
],
"materials" : [
{
"doubleSided" : true,
"name" : "JiaoCheA",
"pbrMetallicRoughness" : {
"baseColorTexture" : {
"index" : 0
},
"metallicFactor" : 0,
"roughnessFactor" : 0.5
}
}
],
"meshes" : [
{
"name" : "yk-CLS Wheel",
"primitives" : [
{
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 0,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 3,
"material" : 0,
"mode" : 4
}
]
},
{
"name" : "yk-CLS Wheel.001",
"primitives" : [
{
"attributes" : {
"POSITION" : 4,
"NORMAL" : 5,
"TEXCOORD_0" : 6
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 1,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 3,
"material" : 0,
"mode" : 4
}
]
},
{
"name" : "yk-CLS Wheel.002",
"primitives" : [
{
"attributes" : {
"POSITION" : 7,
"NORMAL" : 8,
"TEXCOORD_0" : 9
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 2,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 10,
"material" : 0,
"mode" : 4
}
]
},
{
"name" : "yk-CLS Wheel.003",
"primitives" : [
{
"attributes" : {
"POSITION" : 11,
"NORMAL" : 12,
"TEXCOORD_0" : 13
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 3,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 10,
"material" : 0,
"mode" : 4
}
]
},
{
"name" : "yk-CLS Body",
"primitives" : [
{
"attributes" : {
"POSITION" : 14,
"NORMAL" : 15,
"TEXCOORD_0" : 16
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 4,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 17,
"material" : 0,
"mode" : 4
}
]
}
],
"textures" : [
{
"sampler" : 0,
"source" : 0
}
],
"images" : [
{
"mimeType" : "image/jpeg",
"name" : "JiaoCheA",
"uri" : "JiaoCheA.jpg"
}
],
"accessors" : [
{
"componentType" : 5126,
"count" : 234,
"max" : [
17.92121124267578,
47.514617919921875,
46.79276657104492
],
"min" : [
-17.92116928100586,
-47.514625549316406,
-46.79276657104492
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 234,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 234,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 1392,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 234,
"max" : [
17.92121124267578,
47.514739990234375,
46.79276657104492
],
"min" : [
-17.92116928100586,
-47.514503479003906,
-46.79276657104492
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 234,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 234,
"type" : "VEC2"
},
{
"componentType" : 5126,
"count" : 234,
"max" : [
17.92116928100586,
47.51475524902344,
46.792781829833984
],
"min" : [
-17.92121696472168,
-47.514522552490234,
-46.79277801513672
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 234,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 234,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 1392,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 234,
"max" : [
17.92116928100586,
47.51463317871094,
46.792781829833984
],
"min" : [
-17.92121696472168,
-47.514644622802734,
-46.79277801513672
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 234,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 234,
"type" : "VEC2"
},
{
"componentType" : 5126,
"count" : 5408,
"max" : [
138.19265747070312,
336.4250183105469,
84.43877410888672
],
"min" : [
-138.19268798828125,
-336.4249267578125,
-84.43873596191406
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 5408,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 5408,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 16962,
"type" : "SCALAR"
}
],
"bufferViews" : [
{
"buffer" : 0,
"byteLength" : 2386,
"byteOffset" : 0
},
{
"buffer" : 0,
"byteLength" : 2386,
"byteOffset" : 2388
},
{
"buffer" : 0,
"byteLength" : 2416,
"byteOffset" : 4776
},
{
"buffer" : 0,
"byteLength" : 2416,
"byteOffset" : 7192
},
{
"buffer" : 0,
"byteLength" : 41863,
"byteOffset" : 9608
}
],
"samplers" : [
{
"magFilter" : 9729,
"minFilter" : 9987
}
],
"buffers" : [
{
"byteLength" : 51472,
"uri" : "JCA.bin"
}
]
}

5
src/assets/mesh/mark/other/jca/JCA.gltf.manifest

@ -0,0 +1,5 @@
{
"version" : 1,
"enableSceneOffline" : true,
"enableTexturesOffline" : true
}

BIN
src/assets/mesh/mark/other/jca/JiaoCheA.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

BIN
src/assets/mesh/mark/other/wz/WZ.bin

Binary file not shown.

114
src/assets/mesh/mark/other/wz/WZ.gltf

@ -0,0 +1,114 @@
{
"asset" : {
"generator" : "Khronos glTF Blender I/O v1.6.16",
"version" : "2.0"
},
"extensionsUsed" : [
"KHR_draco_mesh_compression"
],
"extensionsRequired" : [
"KHR_draco_mesh_compression"
],
"scene" : 0,
"scenes" : [
{
"name" : "Scene",
"nodes" : [
0
]
}
],
"nodes" : [
{
"mesh" : 0,
"name" : "WenZi"
}
],
"materials" : [
{
"doubleSided" : true,
"name" : "Red",
"pbrMetallicRoughness" : {
"baseColorFactor" : [
0.9550902247428894,
0.014668499119579792,
0.008405414409935474,
1
],
"metallicFactor" : 0
}
}
],
"meshes" : [
{
"name" : "WenZi",
"primitives" : [
{
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 0,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 3,
"material" : 0,
"mode" : 4
}
]
}
],
"accessors" : [
{
"componentType" : 5126,
"count" : 1770,
"max" : [
0.08586336672306061,
0.5111521482467651,
0.03383050486445427
],
"min" : [
-0.08586336672306061,
7.233956544894227e-09,
-0.03383046016097069
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 1770,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 1770,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 2184,
"type" : "SCALAR"
}
],
"bufferViews" : [
{
"buffer" : 0,
"byteLength" : 10260,
"byteOffset" : 0
}
],
"buffers" : [
{
"byteLength" : 10260,
"uri" : "WZ.bin"
}
]
}

5
src/assets/mesh/mark/other/wz/WZ.gltf.manifest

@ -0,0 +1,5 @@
{
"version" : 1,
"enableSceneOffline" : true,
"enableTexturesOffline" : true
}

BIN
src/assets/mesh/mark/outside/ga/GA.bin

Binary file not shown.

130
src/assets/mesh/mark/outside/ga/GA.gltf

@ -0,0 +1,130 @@
{
"asset" : {
"generator" : "Khronos glTF Blender I/O v1.6.16",
"version" : "2.0"
},
"extensionsUsed" : [
"KHR_draco_mesh_compression"
],
"extensionsRequired" : [
"KHR_draco_mesh_compression"
],
"scene" : 0,
"scenes" : [
{
"name" : "Scene",
"nodes" : [
0
]
}
],
"nodes" : [
{
"mesh" : 0,
"name" : "Body"
}
],
"materials" : [
{
"doubleSided" : true,
"name" : "MinJing_Color",
"pbrMetallicRoughness" : {
"baseColorTexture" : {
"index" : 0
},
"metallicFactor" : 0
}
}
],
"meshes" : [
{
"name" : "Body",
"primitives" : [
{
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 0,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 3,
"material" : 0,
"mode" : 4
}
]
}
],
"textures" : [
{
"sampler" : 0,
"source" : 0
}
],
"images" : [
{
"mimeType" : "image/png",
"name" : "MinJing_Color",
"uri" : "MinJing_Color.png"
}
],
"accessors" : [
{
"componentType" : 5126,
"count" : 4255,
"max" : [
0.2961918115615845,
1.8704509735107422,
0.16374512016773224
],
"min" : [
-0.2781335115432739,
-0.0019856898579746485,
-0.1792096644639969
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 4255,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 4255,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 15249,
"type" : "SCALAR"
}
],
"bufferViews" : [
{
"buffer" : 0,
"byteLength" : 34259,
"byteOffset" : 0
}
],
"samplers" : [
{
"magFilter" : 9729,
"minFilter" : 9987
}
],
"buffers" : [
{
"byteLength" : 34260,
"uri" : "GA.bin"
}
]
}

5
src/assets/mesh/mark/outside/ga/GA.gltf.manifest

@ -0,0 +1,5 @@
{
"version" : 1,
"enableSceneOffline" : true,
"enableTexturesOffline" : true
}

BIN
src/assets/mesh/mark/outside/ga/MinJing_Color.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 266 KiB

BIN
src/assets/mesh/mark/outside/jc/JC.bin

Binary file not shown.

642
src/assets/mesh/mark/outside/jc/JC.gltf

@ -0,0 +1,642 @@
{
"asset" : {
"generator" : "Khronos glTF Blender I/O v1.6.16",
"version" : "2.0"
},
"extensionsUsed" : [
"KHR_draco_mesh_compression"
],
"extensionsRequired" : [
"KHR_draco_mesh_compression"
],
"scene" : 0,
"scenes" : [
{
"name" : "Scene",
"nodes" : [
4,
5
]
}
],
"nodes" : [
{
"mesh" : 0,
"name" : "BL",
"translation" : [
0.8741393685340881,
0.3686968684196472,
-2.096468687057495
]
},
{
"mesh" : 1,
"name" : "BR",
"translation" : [
-0.8716365694999695,
0.3686968684196472,
-2.096468925476074
]
},
{
"mesh" : 2,
"name" : "FL",
"translation" : [
0.8741394877433777,
0.3686963617801666,
2.2105014324188232
]
},
{
"mesh" : 3,
"name" : "FR",
"translation" : [
-0.8716368079185486,
0.3686964213848114,
2.2105019092559814
]
},
{
"children" : [
0,
1,
2,
3
],
"name" : "Wheels"
},
{
"mesh" : 4,
"name" : "Body"
}
],
"materials" : [
{
"doubleSided" : true,
"name" : "Jiaojingzhihuiche",
"pbrMetallicRoughness" : {
"baseColorTexture" : {
"index" : 0
},
"metallicFactor" : 0,
"roughnessFactor" : 0.5
}
},
{
"doubleSided" : true,
"name" : "Glass",
"pbrMetallicRoughness" : {
"baseColorFactor" : [
0.054958075284957886,
0.044052742421627045,
0.044052742421627045,
1
],
"metallicFactor" : 0,
"roughnessFactor" : 0.15000000596046448
}
},
{
"doubleSided" : true,
"name" : "Red",
"pbrMetallicRoughness" : {
"baseColorFactor" : [
0.800000011920929,
0,
0,
1
],
"metallicFactor" : 0,
"roughnessFactor" : 0.5
}
},
{
"doubleSided" : true,
"name" : "Blue",
"pbrMetallicRoughness" : {
"baseColorFactor" : [
0,
0,
0.800000011920929,
1
],
"metallicFactor" : 0,
"roughnessFactor" : 0.5
}
}
],
"meshes" : [
{
"name" : "BL.001",
"primitives" : [
{
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 0,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 3,
"material" : 0,
"mode" : 4
}
]
},
{
"name" : "BR.001",
"primitives" : [
{
"attributes" : {
"POSITION" : 4,
"NORMAL" : 5,
"TEXCOORD_0" : 6
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 1,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 3,
"material" : 0,
"mode" : 4
}
]
},
{
"name" : "FL.001",
"primitives" : [
{
"attributes" : {
"POSITION" : 7,
"NORMAL" : 8,
"TEXCOORD_0" : 9
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 2,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 10,
"material" : 0,
"mode" : 4
}
]
},
{
"name" : "FR.001",
"primitives" : [
{
"attributes" : {
"POSITION" : 11,
"NORMAL" : 12,
"TEXCOORD_0" : 13
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 3,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 10,
"material" : 0,
"mode" : 4
}
]
},
{
"name" : "Body",
"primitives" : [
{
"attributes" : {
"POSITION" : 14,
"NORMAL" : 15,
"TEXCOORD_0" : 16,
"TEXCOORD_1" : 17
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 4,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2,
"TEXCOORD_1" : 3
}
}
},
"indices" : 18,
"material" : 1,
"mode" : 4
},
{
"attributes" : {
"POSITION" : 19,
"NORMAL" : 20,
"TEXCOORD_0" : 21,
"TEXCOORD_1" : 22
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 5,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2,
"TEXCOORD_1" : 3
}
}
},
"indices" : 23,
"material" : 2,
"mode" : 4
},
{
"attributes" : {
"POSITION" : 24,
"NORMAL" : 25,
"TEXCOORD_0" : 26,
"TEXCOORD_1" : 27
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 6,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2,
"TEXCOORD_1" : 3
}
}
},
"indices" : 28,
"material" : 3,
"mode" : 4
},
{
"attributes" : {
"POSITION" : 29,
"NORMAL" : 30,
"TEXCOORD_0" : 31,
"TEXCOORD_1" : 32
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 7,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2,
"TEXCOORD_1" : 3
}
}
},
"indices" : 33,
"material" : 0,
"mode" : 4
}
]
}
],
"textures" : [
{
"sampler" : 0,
"source" : 0
}
],
"images" : [
{
"mimeType" : "image/jpeg",
"name" : "Jiaojingzhihuiche",
"uri" : "Jiaojingzhihuiche.jpg"
}
],
"accessors" : [
{
"componentType" : 5126,
"count" : 274,
"max" : [
0.11223506927490234,
0.36417192220687866,
0.3703547716140747
],
"min" : [
-0.11223471164703369,
-0.3651561141014099,
-0.37004566192626953
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 274,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 274,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 1188,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 274,
"max" : [
0.11223495006561279,
0.36417192220687866,
0.3703550100326538
],
"min" : [
-0.11223489046096802,
-0.3651561141014099,
-0.37004542350769043
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 274,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 274,
"type" : "VEC2"
},
{
"componentType" : 5126,
"count" : 274,
"max" : [
0.11223495006561279,
0.3641718327999115,
0.37035560607910156
],
"min" : [
-0.11223483085632324,
-0.3651562035083771,
-0.370044469833374
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 274,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 274,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 1188,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 274,
"max" : [
0.1122351884841919,
0.3641717731952667,
0.37035512924194336
],
"min" : [
-0.11223465204238892,
-0.36515626311302185,
-0.3700449466705322
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 274,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 274,
"type" : "VEC2"
},
{
"componentType" : 5126,
"count" : 86,
"max" : [
0.9621924161911011,
2.353841781616211,
2.2372875213623047
],
"min" : [
-0.9623246788978577,
1.4734232425689697,
-2.966947317123413
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 86,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 86,
"type" : "VEC2"
},
{
"componentType" : 5126,
"count" : 86,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 192,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 32,
"max" : [
0.7121754288673401,
2.872901678085327,
0.819999635219574
],
"min" : [
0.17550039291381836,
2.72139573097229,
0.5596964359283447
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 32,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 32,
"type" : "VEC2"
},
{
"componentType" : 5126,
"count" : 32,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 66,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 32,
"max" : [
-0.16407783329486847,
2.872901678085327,
0.819999635219574
],
"min" : [
-0.6491308212280273,
2.72139573097229,
0.5596964359283447
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 32,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 32,
"type" : "VEC2"
},
{
"componentType" : 5126,
"count" : 32,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 66,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 5279,
"max" : [
1.2398207187652588,
2.872901678085327,
3.000600576400757
],
"min" : [
-1.2397969961166382,
0.31551486253738403,
-3.079669713973999
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 5279,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 5279,
"type" : "VEC2"
},
{
"componentType" : 5126,
"count" : 5279,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 12702,
"type" : "SCALAR"
}
],
"bufferViews" : [
{
"buffer" : 0,
"byteLength" : 2746,
"byteOffset" : 0
},
{
"buffer" : 0,
"byteLength" : 2746,
"byteOffset" : 2748
},
{
"buffer" : 0,
"byteLength" : 2747,
"byteOffset" : 5496
},
{
"buffer" : 0,
"byteLength" : 2747,
"byteOffset" : 8244
},
{
"buffer" : 0,
"byteLength" : 896,
"byteOffset" : 10992
},
{
"buffer" : 0,
"byteLength" : 489,
"byteOffset" : 11888
},
{
"buffer" : 0,
"byteLength" : 469,
"byteOffset" : 12380
},
{
"buffer" : 0,
"byteLength" : 52281,
"byteOffset" : 12852
}
],
"samplers" : [
{
"magFilter" : 9729,
"minFilter" : 9987
}
],
"buffers" : [
{
"byteLength" : 65136,
"uri" : "JC.bin"
}
]
}

5
src/assets/mesh/mark/outside/jc/JC.gltf.manifest

@ -0,0 +1,5 @@
{
"version" : 1,
"enableSceneOffline" : true,
"enableTexturesOffline" : true
}

BIN
src/assets/mesh/mark/outside/jc/Jiaojingzhihuiche.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 431 KiB

BIN
src/assets/mesh/mark/outside/jhc/JHC.bin

Binary file not shown.

663
src/assets/mesh/mark/outside/jhc/JHC.gltf

@ -0,0 +1,663 @@
{
"asset" : {
"generator" : "Khronos glTF Blender I/O v1.6.16",
"version" : "2.0"
},
"extensionsUsed" : [
"KHR_draco_mesh_compression"
],
"extensionsRequired" : [
"KHR_draco_mesh_compression"
],
"scene" : 0,
"scenes" : [
{
"name" : "Scene",
"nodes" : [
4,
5
]
}
],
"nodes" : [
{
"mesh" : 0,
"name" : "BL",
"translation" : [
89.86991119384766,
-243.82618713378906,
-39.0037841796875
]
},
{
"mesh" : 1,
"name" : "BR",
"translation" : [
-89.59562683105469,
-243.82618713378906,
-39.00377655029297
]
},
{
"mesh" : 2,
"name" : "FL",
"translation" : [
89.86988830566406,
198.93002319335938,
-39.00377655029297
]
},
{
"mesh" : 3,
"name" : "FR",
"translation" : [
-89.59563446044922,
198.93002319335938,
-39.00377655029297
]
},
{
"children" : [
0,
1,
2,
3
],
"name" : "Wheels",
"rotation" : [
0.7071068286895752,
0,
0,
0.7071068286895752
],
"scale" : [
0.009999999776482582,
0.009999999776482582,
0.009999999776482582
]
},
{
"mesh" : 4,
"name" : "Body"
}
],
"materials" : [
{
"doubleSided" : true,
"name" : "jiuhuchecc",
"pbrMetallicRoughness" : {
"baseColorTexture" : {
"index" : 0
},
"metallicFactor" : 0,
"roughnessFactor" : 0.5
}
},
{
"doubleSided" : true,
"name" : "Glass",
"pbrMetallicRoughness" : {
"baseColorFactor" : [
0.054958075284957886,
0.044052742421627045,
0.044052742421627045,
1
],
"metallicFactor" : 0,
"roughnessFactor" : 0.15000000596046448
}
},
{
"doubleSided" : true,
"name" : "Blue",
"pbrMetallicRoughness" : {
"baseColorFactor" : [
0,
0,
0.6743999719619751,
1
],
"metallicFactor" : 0,
"roughnessFactor" : 0.5
}
},
{
"doubleSided" : true,
"name" : "Red",
"pbrMetallicRoughness" : {
"baseColorFactor" : [
0.800000011920929,
0,
0,
1
],
"metallicFactor" : 0,
"roughnessFactor" : 0.5
}
}
],
"meshes" : [
{
"name" : "BL",
"primitives" : [
{
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 0,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 3,
"material" : 0,
"mode" : 4
}
]
},
{
"name" : "BR",
"primitives" : [
{
"attributes" : {
"POSITION" : 4,
"NORMAL" : 5,
"TEXCOORD_0" : 6
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 1,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 7,
"material" : 0,
"mode" : 4
}
]
},
{
"name" : "FL",
"primitives" : [
{
"attributes" : {
"POSITION" : 8,
"NORMAL" : 9,
"TEXCOORD_0" : 10
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 2,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 11,
"material" : 0,
"mode" : 4
}
]
},
{
"name" : "FR",
"primitives" : [
{
"attributes" : {
"POSITION" : 12,
"NORMAL" : 13,
"TEXCOORD_0" : 14
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 3,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 15,
"material" : 0,
"mode" : 4
}
]
},
{
"name" : "Body",
"primitives" : [
{
"attributes" : {
"POSITION" : 16,
"NORMAL" : 17,
"TEXCOORD_0" : 18,
"TEXCOORD_1" : 19
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 4,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2,
"TEXCOORD_1" : 3
}
}
},
"indices" : 20,
"material" : 0,
"mode" : 4
},
{
"attributes" : {
"POSITION" : 21,
"NORMAL" : 22,
"TEXCOORD_0" : 23,
"TEXCOORD_1" : 24
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 5,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2,
"TEXCOORD_1" : 3
}
}
},
"indices" : 25,
"material" : 1,
"mode" : 4
},
{
"attributes" : {
"POSITION" : 26,
"NORMAL" : 27,
"TEXCOORD_0" : 28,
"TEXCOORD_1" : 29
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 6,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2,
"TEXCOORD_1" : 3
}
}
},
"indices" : 30,
"material" : 2,
"mode" : 4
},
{
"attributes" : {
"POSITION" : 31,
"NORMAL" : 32,
"TEXCOORD_0" : 33,
"TEXCOORD_1" : 34
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 7,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2,
"TEXCOORD_1" : 3
}
}
},
"indices" : 35,
"material" : 3,
"mode" : 4
}
]
}
],
"textures" : [
{
"sampler" : 0,
"source" : 0
}
],
"images" : [
{
"mimeType" : "image/jpeg",
"name" : "jiuhuchecolor",
"uri" : "jiuhuchecolor.jpg"
}
],
"accessors" : [
{
"componentType" : 5126,
"count" : 274,
"max" : [
11.537712097167969,
38.07270812988281,
37.538028717041016
],
"min" : [
-11.537750244140625,
-38.04032897949219,
-37.43679428100586
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 274,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 274,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 1188,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 274,
"max" : [
11.537673950195312,
38.07269287109375,
37.53801727294922
],
"min" : [
-11.537788391113281,
-38.04034423828125,
-37.436805725097656
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 274,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 274,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 1188,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 274,
"max" : [
11.537734985351562,
38.0726318359375,
37.53801727294922
],
"min" : [
-11.537727355957031,
-38.0404052734375,
-37.436805725097656
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 274,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 274,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 1188,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 274,
"max" : [
11.537681579589844,
38.0726318359375,
37.53801727294922
],
"min" : [
-11.53778076171875,
-38.0404052734375,
-37.436805725097656
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 274,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 274,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 1188,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 5257,
"max" : [
1.2746187448501587,
2.96435809135437,
2.8015220165252686
],
"min" : [
-1.2744255065917969,
0.3353670537471771,
-3.448988199234009
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 5257,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 5257,
"type" : "VEC2"
},
{
"componentType" : 5126,
"count" : 5257,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 12720,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 68,
"max" : [
0.9840683341026306,
2.4307644367218018,
2.0168375968933105
],
"min" : [
-0.9705947041511536,
1.525695562362671,
-3.3331093788146973
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 68,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 68,
"type" : "VEC2"
},
{
"componentType" : 5126,
"count" : 68,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 168,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 32,
"max" : [
0.7321998476982117,
2.96435809135437,
0.5598673224449158
],
"min" : [
0.1756378710269928,
2.8086097240448,
0.2922760248184204
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 32,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 32,
"type" : "VEC2"
},
{
"componentType" : 5126,
"count" : 32,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 66,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 32,
"max" : [
-0.1641930192708969,
2.96435809135437,
0.5598673224449158
],
"min" : [
-0.6672216057777405,
2.8086097240448,
0.2922760248184204
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 32,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 32,
"type" : "VEC2"
},
{
"componentType" : 5126,
"count" : 32,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 66,
"type" : "SCALAR"
}
],
"bufferViews" : [
{
"buffer" : 0,
"byteLength" : 2746,
"byteOffset" : 0
},
{
"buffer" : 0,
"byteLength" : 2746,
"byteOffset" : 2748
},
{
"buffer" : 0,
"byteLength" : 2740,
"byteOffset" : 5496
},
{
"buffer" : 0,
"byteLength" : 2740,
"byteOffset" : 8236
},
{
"buffer" : 0,
"byteLength" : 43616,
"byteOffset" : 10976
},
{
"buffer" : 0,
"byteLength" : 1125,
"byteOffset" : 54592
},
{
"buffer" : 0,
"byteLength" : 592,
"byteOffset" : 55720
},
{
"buffer" : 0,
"byteLength" : 546,
"byteOffset" : 56312
}
],
"samplers" : [
{
"magFilter" : 9729,
"minFilter" : 9987
}
],
"buffers" : [
{
"byteLength" : 56860,
"uri" : "JHC.bin"
}
]
}

5
src/assets/mesh/mark/outside/jhc/JHC.gltf.manifest

@ -0,0 +1,5 @@
{
"version" : 1,
"enableSceneOffline" : true,
"enableTexturesOffline" : true
}

BIN
src/assets/mesh/mark/outside/jhc/jiuhuchecolor.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 474 KiB

BIN
src/assets/mesh/mark/outside/jj/JJ.bin

Binary file not shown.

205
src/assets/mesh/mark/outside/jj/JJ.gltf

@ -0,0 +1,205 @@
{
"asset" : {
"generator" : "Khronos glTF Blender I/O v1.6.16",
"version" : "2.0"
},
"extensionsUsed" : [
"KHR_draco_mesh_compression"
],
"extensionsRequired" : [
"KHR_draco_mesh_compression"
],
"scene" : 0,
"scenes" : [
{
"name" : "Scene",
"nodes" : [
0
]
}
],
"nodes" : [
{
"mesh" : 0,
"name" : "JiaoJing"
}
],
"materials" : [
{
"doubleSided" : true,
"name" : "JiaoJing",
"pbrMetallicRoughness" : {
"baseColorTexture" : {
"index" : 0
},
"metallicFactor" : 0
}
},
{
"doubleSided" : true,
"name" : "JiaoJingMaoZi",
"pbrMetallicRoughness" : {
"baseColorTexture" : {
"index" : 1
},
"metallicFactor" : 0,
"roughnessFactor" : 0.5
}
}
],
"meshes" : [
{
"name" : "JiaoJing",
"primitives" : [
{
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 0,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 3,
"material" : 0,
"mode" : 4
},
{
"attributes" : {
"POSITION" : 4,
"NORMAL" : 5,
"TEXCOORD_0" : 6
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 1,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 7,
"material" : 1,
"mode" : 4
}
]
}
],
"textures" : [
{
"sampler" : 0,
"source" : 0
},
{
"sampler" : 0,
"source" : 1
}
],
"images" : [
{
"mimeType" : "image/jpeg",
"name" : "JiaoJing",
"uri" : "JiaoJing.jpg"
},
{
"mimeType" : "image/jpeg",
"name" : "JiaoJingMaoZi",
"uri" : "JiaoJingMaoZi.jpg"
}
],
"accessors" : [
{
"componentType" : 5126,
"count" : 3137,
"max" : [
0.2940014600753784,
1.825747013092041,
0.15076936781406403
],
"min" : [
-0.2879331111907959,
-0.0029216797556728125,
-0.15514452755451202
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 3137,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 3137,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 14886,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 268,
"max" : [
0.14447662234306335,
1.8681155443191528,
0.17496293783187866
],
"min" : [
-0.1444767415523529,
1.7160290479660034,
-0.17496289312839508
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 268,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 268,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 756,
"type" : "SCALAR"
}
],
"bufferViews" : [
{
"buffer" : 0,
"byteLength" : 25904,
"byteOffset" : 0
},
{
"buffer" : 0,
"byteLength" : 2825,
"byteOffset" : 25904
}
],
"samplers" : [
{
"magFilter" : 9729,
"minFilter" : 9987
}
],
"buffers" : [
{
"byteLength" : 28732,
"uri" : "JJ.bin"
}
]
}

5
src/assets/mesh/mark/outside/jj/JJ.gltf.manifest

@ -0,0 +1,5 @@
{
"version" : 1,
"enableSceneOffline" : true,
"enableTexturesOffline" : true
}

BIN
src/assets/mesh/mark/outside/jj/JiaoJing.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 160 KiB

BIN
src/assets/mesh/mark/outside/jj/JiaoJingMaoZi.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

BIN
src/assets/mesh/mark/outside/mhf/Boots_AlbedoTransparency.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

BIN
src/assets/mesh/mark/outside/mhf/BunkerClothing_AlbedoTransparency.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 364 KiB

BIN
src/assets/mesh/mark/outside/mhf/Head_AlbedoTransparency.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

BIN
src/assets/mesh/mark/outside/mhf/Helmet_AlbedoTransparency.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

BIN
src/assets/mesh/mark/outside/mhf/MHF.bin

Binary file not shown.

668
src/assets/mesh/mark/outside/mhf/MHF.gltf

@ -0,0 +1,668 @@
{
"asset" : {
"generator" : "Khronos glTF Blender I/O v1.6.16",
"version" : "2.0"
},
"extensionsUsed" : [
"KHR_draco_mesh_compression"
],
"extensionsRequired" : [
"KHR_draco_mesh_compression"
],
"scene" : 0,
"scenes" : [
{
"name" : "Scene",
"nodes" : [
2
]
}
],
"nodes" : [
{
"mesh" : 0,
"name" : "PZ",
"scale" : [
0.009999999776482582,
0.009999999776482582,
0.009999999776482582
],
"translation" : [
0,
0,
0.37858137488365173
]
},
{
"children" : [
0
],
"mesh" : 1,
"name" : "PT",
"translation" : [
-0.17859923839569092,
1.069671392440796,
-0.09293144941329956
]
},
{
"children" : [
1
],
"mesh" : 2,
"name" : "MHF"
}
],
"materials" : [
{
"doubleSided" : true,
"name" : "ShuiQiang.004",
"pbrMetallicRoughness" : {
"baseColorTexture" : {
"index" : 0
},
"metallicFactor" : 0,
"roughnessFactor" : 0.5
}
},
{
"doubleSided" : true,
"name" : "BunkerClothing_AlbedoTransparency.003",
"pbrMetallicRoughness" : {
"baseColorTexture" : {
"index" : 1
},
"metallicFactor" : 0,
"roughnessFactor" : 0.5
}
},
{
"doubleSided" : true,
"name" : "Helmet_AlbedoTransparency.003",
"pbrMetallicRoughness" : {
"baseColorTexture" : {
"index" : 2
},
"metallicFactor" : 0,
"roughnessFactor" : 0.5
}
},
{
"alphaMode" : "BLEND",
"name" : "Glasses.003",
"pbrMetallicRoughness" : {
"baseColorFactor" : [
0.5882350206375122,
0.5882350206375122,
0.5882350206375122,
0.3897058963775635
],
"metallicFactor" : 0,
"roughnessFactor" : 0.5
}
},
{
"doubleSided" : true,
"name" : "Straps_AlbedoTransparency.003",
"pbrMetallicRoughness" : {
"baseColorTexture" : {
"index" : 3
},
"metallicFactor" : 0,
"roughnessFactor" : 0.5
}
},
{
"doubleSided" : true,
"name" : "Head_AlbedoTransparency.003",
"pbrMetallicRoughness" : {
"baseColorTexture" : {
"index" : 4
},
"metallicFactor" : 0,
"roughnessFactor" : 0.5
}
},
{
"doubleSided" : true,
"name" : "Boots_AlbedoTransparency.003",
"pbrMetallicRoughness" : {
"baseColorTexture" : {
"index" : 5
},
"metallicFactor" : 0,
"roughnessFactor" : 0.5
}
}
],
"meshes" : [
{
"name" : "\u7acb\u65b9\u4f53.003",
"primitives" : [
{
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 0,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 3,
"mode" : 4
}
]
},
{
"name" : "WaterGun.003",
"primitives" : [
{
"attributes" : {
"POSITION" : 4,
"NORMAL" : 5,
"TEXCOORD_0" : 6
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 1,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 7,
"material" : 0,
"mode" : 4
}
]
},
{
"name" : "MieHuoFu.003",
"primitives" : [
{
"attributes" : {
"POSITION" : 8,
"NORMAL" : 9,
"TEXCOORD_0" : 10
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 2,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 11,
"material" : 1,
"mode" : 4
},
{
"attributes" : {
"POSITION" : 12,
"NORMAL" : 13,
"TEXCOORD_0" : 14
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 3,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 15,
"material" : 2,
"mode" : 4
},
{
"attributes" : {
"POSITION" : 16,
"NORMAL" : 17,
"TEXCOORD_0" : 18
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 4,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 19,
"material" : 3,
"mode" : 4
},
{
"attributes" : {
"POSITION" : 20,
"NORMAL" : 21,
"TEXCOORD_0" : 22
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 5,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 23,
"material" : 4,
"mode" : 4
},
{
"attributes" : {
"POSITION" : 24,
"NORMAL" : 25,
"TEXCOORD_0" : 26
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 6,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 27,
"material" : 5,
"mode" : 4
},
{
"attributes" : {
"POSITION" : 28,
"NORMAL" : 29,
"TEXCOORD_0" : 30
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 7,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2
}
}
},
"indices" : 31,
"material" : 6,
"mode" : 4
}
]
}
],
"textures" : [
{
"sampler" : 0,
"source" : 0
},
{
"sampler" : 0,
"source" : 1
},
{
"sampler" : 0,
"source" : 2
},
{
"sampler" : 0,
"source" : 3
},
{
"sampler" : 0,
"source" : 4
},
{
"sampler" : 0,
"source" : 5
}
],
"images" : [
{
"mimeType" : "image/jpeg",
"name" : "ShuiQiang",
"uri" : "ShuiQiang.jpg"
},
{
"mimeType" : "image/png",
"name" : "BunkerClothing_AlbedoTransparency",
"uri" : "BunkerClothing_AlbedoTransparency.png"
},
{
"mimeType" : "image/jpeg",
"name" : "Helmet_AlbedoTransparency",
"uri" : "Helmet_AlbedoTransparency.jpg"
},
{
"mimeType" : "image/jpeg",
"name" : "Straps_AlbedoTransparency",
"uri" : "Straps_AlbedoTransparency.jpg"
},
{
"mimeType" : "image/jpeg",
"name" : "Head_AlbedoTransparency",
"uri" : "Head_AlbedoTransparency.jpg"
},
{
"mimeType" : "image/jpeg",
"name" : "Boots_AlbedoTransparency",
"uri" : "Boots_AlbedoTransparency.jpg"
}
],
"accessors" : [
{
"componentType" : 5126,
"count" : 24,
"max" : [
1,
1,
1
],
"min" : [
-1,
-1,
-1
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 24,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 24,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 36,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 1430,
"max" : [
0.07184479385614395,
0.07184479385614395,
0.39843103289604187
],
"min" : [
-0.07183649390935898,
-0.07183649390935898,
-1.3987065727860681e-08
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 1430,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 1430,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 2964,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 3652,
"max" : [
0.31568726897239685,
1.579005241394043,
0.21250030398368835
],
"min" : [
-0.3100007474422455,
0.029164545238018036,
-0.16183406114578247
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 3652,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 3652,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 15516,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 4746,
"max" : [
0.13183458149433136,
1.8140419721603394,
0.16708354651927948
],
"min" : [
-0.13521797955036163,
1.4775199890136719,
-0.1361415833234787
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 4746,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 4746,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 22830,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 1514,
"max" : [
0.11418724805116653,
1.6796936988830566,
0.1821955293416977
],
"min" : [
-0.1096891537308693,
1.5852127075195312,
0.0685286819934845
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 1514,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 1514,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 7860,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 5342,
"max" : [
0.09371404349803925,
1.7351529598236084,
0.14662612974643707
],
"min" : [
-0.08921344578266144,
1.498990535736084,
-0.036142800003290176
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 5342,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 5342,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 15522,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 3829,
"max" : [
0.09659265726804733,
1.7590115070343018,
0.1568334698677063
],
"min" : [
-0.0969589576125145,
1.455280065536499,
-0.08099030703306198
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 3829,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 3829,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 21555,
"type" : "SCALAR"
},
{
"componentType" : 5126,
"count" : 1388,
"max" : [
0.2262089103460312,
0.2532302439212799,
0.18883022665977478
],
"min" : [
-0.2262089103460312,
-2.776151220018619e-08,
-0.10604356974363327
],
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 1388,
"type" : "VEC3"
},
{
"componentType" : 5126,
"count" : 1388,
"type" : "VEC2"
},
{
"componentType" : 5123,
"count" : 5148,
"type" : "SCALAR"
}
],
"bufferViews" : [
{
"buffer" : 0,
"byteLength" : 264,
"byteOffset" : 0
},
{
"buffer" : 0,
"byteLength" : 8908,
"byteOffset" : 264
},
{
"buffer" : 0,
"byteLength" : 28138,
"byteOffset" : 9172
},
{
"buffer" : 0,
"byteLength" : 34016,
"byteOffset" : 37312
},
{
"buffer" : 0,
"byteLength" : 9580,
"byteOffset" : 71328
},
{
"buffer" : 0,
"byteLength" : 37426,
"byteOffset" : 80908
},
{
"buffer" : 0,
"byteLength" : 27725,
"byteOffset" : 118336
},
{
"buffer" : 0,
"byteLength" : 11416,
"byteOffset" : 146064
}
],
"samplers" : [
{
"magFilter" : 9729,
"minFilter" : 9987
}
],
"buffers" : [
{
"byteLength" : 157480,
"uri" : "MHF.bin"
}
]
}

5
src/assets/mesh/mark/outside/mhf/MHF.gltf.manifest

@ -0,0 +1,5 @@
{
"version" : 1,
"enableSceneOffline" : true,
"enableTexturesOffline" : true
}

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save