chenzhen 6 роки тому
батько
коміт
0ddf9ba58d
100 змінених файлів з 16088 додано та 3802 видалено
  1. BIN
      color3D_laya/FilePathRecord.exe
  2. 1 1
      color3D_laya/bin/index.js
  3. 485 143
      color3D_laya/bin/js/bundle.js
  4. BIN
      color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/FracturedBall/FracturedBall-Part1.lm
  5. BIN
      color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/FracturedBall/FracturedBall-Part10.lm
  6. BIN
      color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/FracturedBall/FracturedBall-Part2.lm
  7. BIN
      color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/FracturedBall/FracturedBall-Part3.lm
  8. BIN
      color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/FracturedBall/FracturedBall-Part4.lm
  9. BIN
      color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/FracturedBall/FracturedBall-Part5.lm
  10. BIN
      color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/FracturedBall/FracturedBall-Part6.lm
  11. BIN
      color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/FracturedBall/FracturedBall-Part7.lm
  12. BIN
      color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/FracturedBall/FracturedBall-Part8.lm
  13. BIN
      color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/FracturedBall/FracturedBall-Part9.lm
  14. BIN
      color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/obs_d/obs_d-Mesh.lm
  15. BIN
      color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/obs_h/obs_h-Mesh.lm
  16. BIN
      color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/obs_x/obs_x-Mesh.lm
  17. BIN
      color3D_laya/bin/res/LayaScene_main/Conventional/Library/unity default resources-Capsule.lm
  18. 414 3511
      color3D_laya/bin/res/LayaScene_main/Conventional/main.ls
  19. BIN
      color3D_laya/bin/res/LayaScene_props/Conventional/Assets/AllModel/obs_d/obs_d-Mesh.lm
  20. BIN
      color3D_laya/bin/res/LayaScene_props/Conventional/Assets/AllModel/obs_g/obs_g-Mesh.lm
  21. BIN
      color3D_laya/bin/res/LayaScene_props/Conventional/Assets/AllModel/obs_h/obs_h-Mesh.lm
  22. BIN
      color3D_laya/bin/res/LayaScene_props/Conventional/Assets/AllModel/obs_k/obs_k-Mesh.lm
  23. BIN
      color3D_laya/bin/res/LayaScene_props/Conventional/Assets/AllModel/obs_s/obs_s-Mesh.lm
  24. BIN
      color3D_laya/bin/res/LayaScene_props/Conventional/Assets/AllModel/obs_x/obs_x-Mesh.lm
  25. 54 0
      color3D_laya/bin/res/LayaScene_props/Conventional/Assets/Prefabs/M/perple.lmat
  26. 54 0
      color3D_laya/bin/res/LayaScene_props/Conventional/Assets/Prefabs/M/redmat.lmat
  27. 54 0
      color3D_laya/bin/res/LayaScene_props/Conventional/Assets/Prefabs/M/whitemat.lmat
  28. 54 0
      color3D_laya/bin/res/LayaScene_props/Conventional/Assets/Prefabs/M/yellowmat.lmat
  29. BIN
      color3D_laya/bin/res/LayaScene_props/Conventional/Library/unity default resources-Capsule.lm
  30. BIN
      color3D_laya/bin/res/LayaScene_props/Conventional/Library/unity default resources-Cylinder.lm
  31. BIN
      color3D_laya/bin/res/LayaScene_props/Conventional/Library/unity default resources-Sphere.lm
  32. 58 0
      color3D_laya/bin/res/LayaScene_props/Conventional/Resources/unity_builtin_extra.lmat
  33. 3279 0
      color3D_laya/bin/res/LayaScene_props/Conventional/prop1.lh
  34. 1637 0
      color3D_laya/bin/res/LayaScene_props/Conventional/prop2.lh
  35. 2029 0
      color3D_laya/bin/res/LayaScene_props/Conventional/prop3.lh
  36. 121 0
      color3D_laya/bin/res/LayaScene_props/Conventional/prop4.lh
  37. 1921 0
      color3D_laya/bin/res/LayaScene_props/Conventional/prop5.lh
  38. 60 0
      color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Materials/007_b.lmat
  39. 60 0
      color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Materials/008a.lmat
  40. 60 0
      color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Materials/d_lizi.lmat
  41. 60 0
      color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Materials/guang_2a.lmat
  42. 60 0
      color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Materials/guang_3.lmat
  43. 60 0
      color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Materials/huo_a.lmat
  44. 60 0
      color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Materials/lizi_zi.lmat
  45. 60 0
      color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Materials/masaike.lmat
  46. 58 0
      color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Materials/yan.lmat
  47. BIN
      color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Texture/007b.png
  48. BIN
      color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Texture/008a.png
  49. BIN
      color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Texture/d_lizi.png
  50. BIN
      color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Texture/guang_2.png
  51. BIN
      color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Texture/guang_3.png
  52. BIN
      color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Texture/huo_a.png
  53. BIN
      color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Texture/lizi_zise.png
  54. BIN
      color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Texture/masaike.png
  55. BIN
      color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Texture/yan.png
  56. 827 0
      color3D_laya/bin/res/LayaScene_tail/Conventional/tuowei1.lh
  57. 1297 0
      color3D_laya/bin/res/LayaScene_tail/Conventional/tuowei2.lh
  58. 537 0
      color3D_laya/bin/res/LayaScene_tail/Conventional/tuowei3.lh
  59. 1084 0
      color3D_laya/bin/res/LayaScene_tail/Conventional/tuowei4.lh
  60. 616 0
      color3D_laya/bin/res/LayaScene_tail/Conventional/tuowei5.lh
  61. 1 0
      color3D_laya/bin/res/config/nativefiles.txt
  62. 3 3
      color3D_laya/laya/.laya
  63. 0 80
      color3D_laya/src/AssetController.ts
  64. 6 2
      color3D_laya/src/Main.ts
  65. 18 13
      color3D_laya/src/script/Behaviour/PassivityBehaviour.ts
  66. 4 2
      color3D_laya/src/script/Behaviour/StandBehaviour.ts
  67. 22 0
      color3D_laya/src/script/GameLogic/AssetController.ts
  68. 1 1
      color3D_laya/src/script/GameLogic/CameraBehavior.ts
  69. 15 1
      color3D_laya/src/script/GameLogic/GameController.ts
  70. 19 1
      color3D_laya/src/script/GameLogic/GameDefined.ts
  71. 30 0
      color3D_laya/src/script/GameLogic/Obs.ts
  72. 161 8
      color3D_laya/src/script/GameLogic/ObsController.ts
  73. 48 0
      color3D_laya/src/script/GameLogic/ParticleMgr.ts
  74. 43 10
      color3D_laya/src/script/GameLogic/PlayerController.ts
  75. 1 7
      color3D_laya/src/script/GameLogic/PoolManager.ts
  76. 35 0
      color3D_laya/src/script/GameLogic/ResourceLoad.ts
  77. 61 11
      color3D_laya/src/script/GameLogic/SceneController.ts
  78. 48 3
      color3D_laya/src/script/GameLogic/player.ts
  79. 3 1
      color3D_laya/src/script/Gameui/game_ui.ts
  80. 10 3
      color3D_laya/src/script/Oimo/OimoRigibody.ts
  81. BIN
      color3D_unity/color3D/.vs/color3D/v16/.suo
  82. BIN
      color3D_unity/color3D/.vs/color3D/v16/Server/sqlite3/storage.ide
  83. 1 1
      color3D_unity/color3D/Assets/Editor/Editor_Tool.cs
  84. 9 0
      color3D_unity/color3D/Assets/FX.meta
  85. 9 0
      color3D_unity/color3D/Assets/FX/Materials.meta
  86. 38 0
      color3D_unity/color3D/Assets/FX/Materials/007_b.mat
  87. 7 0
      color3D_unity/color3D/Assets/FX/Materials/007_b.mat.meta
  88. 37 0
      color3D_unity/color3D/Assets/FX/Materials/008a.mat
  89. 7 0
      color3D_unity/color3D/Assets/FX/Materials/008a.mat.meta
  90. 92 0
      color3D_unity/color3D/Assets/FX/Materials/d_lizi.mat
  91. 9 0
      color3D_unity/color3D/Assets/FX/Materials/d_lizi.mat.meta
  92. 37 0
      color3D_unity/color3D/Assets/FX/Materials/guang_2a.mat
  93. 7 0
      color3D_unity/color3D/Assets/FX/Materials/guang_2a.mat.meta
  94. 37 0
      color3D_unity/color3D/Assets/FX/Materials/guang_3.mat
  95. 7 0
      color3D_unity/color3D/Assets/FX/Materials/guang_3.mat.meta
  96. 92 0
      color3D_unity/color3D/Assets/FX/Materials/huo_a.mat
  97. 9 0
      color3D_unity/color3D/Assets/FX/Materials/huo_a.mat.meta
  98. 92 0
      color3D_unity/color3D/Assets/FX/Materials/lizi_zi.mat
  99. 9 0
      color3D_unity/color3D/Assets/FX/Materials/lizi_zi.mat.meta
  100. 0 0
      color3D_unity/color3D/Assets/FX/Materials/masaike.mat

BIN
color3D_laya/FilePathRecord.exe


+ 1 - 1
color3D_laya/bin/index.js

@@ -9,9 +9,9 @@ window.screenOrientation = "portrait";
 
 //-----libs-begin-----
 loadLib("libs/laya.core.js")
-loadLib("libs/laya.html.js")
 loadLib("libs/laya.ui.js")
 loadLib("libs/laya.d3.js")
 loadLib("libs/oimo.js")
+loadLib("libs/laya.wxmini.js")
 //-----libs-end-------
 loadLib("js/bundle.js");

Різницю між файлами не показано, бо вона завелика
+ 485 - 143
color3D_laya/bin/js/bundle.js


BIN
color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/FracturedBall/FracturedBall-Part1.lm


BIN
color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/FracturedBall/FracturedBall-Part10.lm


BIN
color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/FracturedBall/FracturedBall-Part2.lm


BIN
color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/FracturedBall/FracturedBall-Part3.lm


BIN
color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/FracturedBall/FracturedBall-Part4.lm


BIN
color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/FracturedBall/FracturedBall-Part5.lm


BIN
color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/FracturedBall/FracturedBall-Part6.lm


BIN
color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/FracturedBall/FracturedBall-Part7.lm


BIN
color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/FracturedBall/FracturedBall-Part8.lm


BIN
color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/FracturedBall/FracturedBall-Part9.lm


BIN
color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/obs_d/obs_d-Mesh.lm


BIN
color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/obs_h/obs_h-Mesh.lm


BIN
color3D_laya/bin/res/LayaScene_main/Conventional/Assets/AllModel/obs_x/obs_x-Mesh.lm


BIN
color3D_laya/bin/res/LayaScene_main/Conventional/Library/unity default resources-Capsule.lm


Різницю між файлами не показано, бо вона завелика
+ 414 - 3511
color3D_laya/bin/res/LayaScene_main/Conventional/main.ls


BIN
color3D_laya/bin/res/LayaScene_props/Conventional/Assets/AllModel/obs_d/obs_d-Mesh.lm


BIN
color3D_laya/bin/res/LayaScene_props/Conventional/Assets/AllModel/obs_g/obs_g-Mesh.lm


BIN
color3D_laya/bin/res/LayaScene_props/Conventional/Assets/AllModel/obs_h/obs_h-Mesh.lm


BIN
color3D_laya/bin/res/LayaScene_props/Conventional/Assets/AllModel/obs_k/obs_k-Mesh.lm


BIN
color3D_laya/bin/res/LayaScene_props/Conventional/Assets/AllModel/obs_s/obs_s-Mesh.lm


BIN
color3D_laya/bin/res/LayaScene_props/Conventional/Assets/AllModel/obs_x/obs_x-Mesh.lm


+ 54 - 0
color3D_laya/bin/res/LayaScene_props/Conventional/Assets/Prefabs/M/perple.lmat

@@ -0,0 +1,54 @@
+{
+	"version":"LAYAMATERIAL:02",
+	"props":{
+		"type":"Laya.BlinnPhongMaterial",
+		"name":"perple",
+		"renderStates":[
+			{
+				"cull":2,
+				"blend":0,
+				"srcBlend":1,
+				"dstBlend":0,
+				"depthWrite":true,
+				"depthTest":515
+			}
+		],
+		"enableVertexColor":false,
+		"alphaTest":false,
+		"alphaTestValue":0.5,
+		"renderQueue":2000,
+		"albedoIntensity":1,
+		"enableLighting":true,
+		"shininess":0.1,
+		"textures":[],
+		"vectors":[
+			{
+				"name":"tilingOffset",
+				"value":[
+					1,
+					1,
+					0,
+					0
+				]
+			},
+			{
+				"name":"specularColor",
+				"value":[
+					1,
+					1,
+					1
+				]
+			},
+			{
+				"name":"albedoColor",
+				"value":[
+					1,
+					0.3382353,
+					0.9079902,
+					1
+				]
+			}
+		],
+		"defines":[]
+	}
+}

+ 54 - 0
color3D_laya/bin/res/LayaScene_props/Conventional/Assets/Prefabs/M/redmat.lmat

@@ -0,0 +1,54 @@
+{
+	"version":"LAYAMATERIAL:02",
+	"props":{
+		"type":"Laya.BlinnPhongMaterial",
+		"name":"redmat",
+		"renderStates":[
+			{
+				"cull":2,
+				"blend":0,
+				"srcBlend":1,
+				"dstBlend":0,
+				"depthWrite":true,
+				"depthTest":515
+			}
+		],
+		"enableVertexColor":false,
+		"alphaTest":false,
+		"alphaTestValue":0.5,
+		"renderQueue":2000,
+		"albedoIntensity":1,
+		"enableLighting":true,
+		"shininess":0.078125,
+		"textures":[],
+		"vectors":[
+			{
+				"name":"tilingOffset",
+				"value":[
+					1,
+					1,
+					0,
+					0
+				]
+			},
+			{
+				"name":"specularColor",
+				"value":[
+					0.5,
+					0.5,
+					0.5
+				]
+			},
+			{
+				"name":"albedoColor",
+				"value":[
+					1,
+					0.1985294,
+					0.1985294,
+					1
+				]
+			}
+		],
+		"defines":[]
+	}
+}

+ 54 - 0
color3D_laya/bin/res/LayaScene_props/Conventional/Assets/Prefabs/M/whitemat.lmat

@@ -0,0 +1,54 @@
+{
+	"version":"LAYAMATERIAL:02",
+	"props":{
+		"type":"Laya.BlinnPhongMaterial",
+		"name":"whitemat",
+		"renderStates":[
+			{
+				"cull":2,
+				"blend":0,
+				"srcBlend":1,
+				"dstBlend":0,
+				"depthWrite":true,
+				"depthTest":515
+			}
+		],
+		"enableVertexColor":false,
+		"alphaTest":false,
+		"alphaTestValue":0.5,
+		"renderQueue":2000,
+		"albedoIntensity":1.52,
+		"enableLighting":true,
+		"shininess":0.04,
+		"textures":[],
+		"vectors":[
+			{
+				"name":"tilingOffset",
+				"value":[
+					1,
+					1,
+					0,
+					0
+				]
+			},
+			{
+				"name":"specularColor",
+				"value":[
+					1,
+					1,
+					1
+				]
+			},
+			{
+				"name":"albedoColor",
+				"value":[
+					1,
+					1,
+					1,
+					1
+				]
+			}
+		],
+		"defines":[]
+	}
+}

+ 54 - 0
color3D_laya/bin/res/LayaScene_props/Conventional/Assets/Prefabs/M/yellowmat.lmat

@@ -0,0 +1,54 @@
+{
+	"version":"LAYAMATERIAL:02",
+	"props":{
+		"type":"Laya.BlinnPhongMaterial",
+		"name":"yellowmat",
+		"renderStates":[
+			{
+				"cull":2,
+				"blend":0,
+				"srcBlend":1,
+				"dstBlend":0,
+				"depthWrite":true,
+				"depthTest":515
+			}
+		],
+		"enableVertexColor":false,
+		"alphaTest":false,
+		"alphaTestValue":0.5,
+		"renderQueue":2000,
+		"albedoIntensity":1,
+		"enableLighting":true,
+		"shininess":0.078125,
+		"textures":[],
+		"vectors":[
+			{
+				"name":"tilingOffset",
+				"value":[
+					1,
+					1,
+					0,
+					0
+				]
+			},
+			{
+				"name":"specularColor",
+				"value":[
+					0.5,
+					0.5,
+					0.5
+				]
+			},
+			{
+				"name":"albedoColor",
+				"value":[
+					0.737931,
+					1,
+					0,
+					1
+				]
+			}
+		],
+		"defines":[]
+	}
+}

BIN
color3D_laya/bin/res/LayaScene_props/Conventional/Library/unity default resources-Capsule.lm


BIN
color3D_laya/bin/res/LayaScene_props/Conventional/Library/unity default resources-Cylinder.lm


BIN
color3D_laya/bin/res/LayaScene_props/Conventional/Library/unity default resources-Sphere.lm


+ 58 - 0
color3D_laya/bin/res/LayaScene_props/Conventional/Resources/unity_builtin_extra.lmat

@@ -0,0 +1,58 @@
+{
+	"version":"LAYAMATERIAL:02",
+	"props":{
+		"type":"Laya.BlinnPhongMaterial",
+		"name":"Default-Material",
+		"renderStates":[
+			{
+				"cull":2,
+				"blend":0,
+				"srcBlend":1,
+				"dstBlend":0,
+				"depthWrite":true,
+				"depthTest":515
+			}
+		],
+		"alphaTest":false,
+		"alphaTestValue":0.5,
+		"renderQueue":2000,
+		"metallic":0,
+		"smoothness":0.5,
+		"smoothnessTextureScale":1,
+		"smoothnessSource":0,
+		"normalTextureScale":1,
+		"parallaxTextureScale":0.02,
+		"occlusionTextureStrength":1,
+		"textures":[],
+		"vectors":[
+			{
+				"name":"tilingOffset",
+				"value":[
+					1,
+					1,
+					0,
+					0
+				]
+			},
+			{
+				"name":"albedoColor",
+				"value":[
+					1,
+					1,
+					1,
+					1
+				]
+			},
+			{
+				"name":"emissionColor",
+				"value":[
+					0,
+					0,
+					0,
+					0.9999999
+				]
+			}
+		],
+		"defines":[]
+	}
+}

Різницю між файлами не показано, бо вона завелика
+ 3279 - 0
color3D_laya/bin/res/LayaScene_props/Conventional/prop1.lh


Різницю між файлами не показано, бо вона завелика
+ 1637 - 0
color3D_laya/bin/res/LayaScene_props/Conventional/prop2.lh


Різницю між файлами не показано, бо вона завелика
+ 2029 - 0
color3D_laya/bin/res/LayaScene_props/Conventional/prop3.lh


+ 121 - 0
color3D_laya/bin/res/LayaScene_props/Conventional/prop4.lh

@@ -0,0 +1,121 @@
+{
+	"version":"LAYAHIERARCHY:01",
+	"data":{
+		"type":"Sprite3D",
+		"props":{
+			"name":"prop4",
+			"active":true,
+			"isStatic":false,
+			"layer":0,
+			"position":[
+				0,
+				0,
+				-4.31
+			],
+			"rotation":[
+				0,
+				0,
+				0,
+				-1
+			],
+			"scale":[
+				1,
+				1,
+				1
+			]
+		},
+		"components":[],
+		"child":[
+			{
+				"type":"Sprite3D",
+				"props":{
+					"name":"obs9",
+					"active":true,
+					"isStatic":false,
+					"layer":9,
+					"position":[
+						0,
+						0,
+						0
+					],
+					"rotation":[
+						0,
+						0,
+						0,
+						-1
+					],
+					"scale":[
+						1,
+						1,
+						1
+					]
+				},
+				"components":[],
+				"child":[
+					{
+						"type":"Sprite3D",
+						"props":{
+							"name":"GameObject",
+							"active":true,
+							"isStatic":false,
+							"layer":9,
+							"position":[
+								0,
+								1,
+								0
+							],
+							"rotation":[
+								0,
+								0,
+								0,
+								-1
+							],
+							"scale":[
+								1,
+								1,
+								1
+							]
+						},
+						"components":[],
+						"child":[
+							{
+								"type":"MeshSprite3D",
+								"props":{
+									"name":"Capsule",
+									"active":true,
+									"isStatic":false,
+									"layer":9,
+									"position":[
+										0,
+										0,
+										0
+									],
+									"rotation":[
+										0,
+										0,
+										0,
+										-1
+									],
+									"scale":[
+										1,
+										1,
+										1
+									],
+									"meshPath":"Library/unity default resources-Capsule.lm",
+									"enableRender":true,
+									"materials":[
+										{
+											"path":"Assets/Prefabs/M/redmat.lmat"
+										}
+									]
+								},
+								"components":[],
+								"child":[]
+							}
+						]
+					}
+				]
+			}
+		]
+	}
+}

Різницю між файлами не показано, бо вона завелика
+ 1921 - 0
color3D_laya/bin/res/LayaScene_props/Conventional/prop5.lh


+ 60 - 0
color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Materials/007_b.lmat

@@ -0,0 +1,60 @@
+{
+	"version":"LAYAMATERIAL:02",
+	"props":{
+		"type":"Laya.ShurikenParticleMaterial",
+		"renderStates":[
+			{
+				"cull":0,
+				"blend":1,
+				"srcBlend":770,
+				"dstBlend":1,
+				"depthWrite":false,
+				"depthTest":515
+			}
+		],
+		"name":"007_b",
+		"alphaTest":false,
+		"renderQueue":3000,
+		"textures":[
+			{
+				"name":"texture",
+				"path":"../Texture/007b.png",
+				"constructParams":[
+					128,
+					128,
+					1,
+					true
+				],
+				"propertyParams":{
+					"filterMode":1,
+					"wrapModeU":0,
+					"wrapModeV":0,
+					"anisoLevel":1
+				}
+			}
+		],
+		"vectors":[
+			{
+				"name":"tilingOffset",
+				"value":[
+					1,
+					1,
+					0,
+					0
+				]
+			},
+			{
+				"name":"color",
+				"value":[
+					0.3607843,
+					0.3607843,
+					0.3607843,
+					0.5019608
+				]
+			}
+		],
+		"defines":[
+			"ADDTIVEFOG"
+		]
+	}
+}

+ 60 - 0
color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Materials/008a.lmat

@@ -0,0 +1,60 @@
+{
+	"version":"LAYAMATERIAL:02",
+	"props":{
+		"type":"Laya.ShurikenParticleMaterial",
+		"renderStates":[
+			{
+				"cull":0,
+				"blend":1,
+				"srcBlend":770,
+				"dstBlend":1,
+				"depthWrite":false,
+				"depthTest":515
+			}
+		],
+		"name":"008a",
+		"alphaTest":false,
+		"renderQueue":3000,
+		"textures":[
+			{
+				"name":"texture",
+				"path":"../Texture/008a.png",
+				"constructParams":[
+					128,
+					128,
+					1,
+					true
+				],
+				"propertyParams":{
+					"filterMode":1,
+					"wrapModeU":0,
+					"wrapModeV":0,
+					"anisoLevel":3
+				}
+			}
+		],
+		"vectors":[
+			{
+				"name":"tilingOffset",
+				"value":[
+					1,
+					1,
+					0,
+					0
+				]
+			},
+			{
+				"name":"color",
+				"value":[
+					0.5,
+					0.5,
+					0.5,
+					0.5
+				]
+			}
+		],
+		"defines":[
+			"ADDTIVEFOG"
+		]
+	}
+}

+ 60 - 0
color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Materials/d_lizi.lmat

@@ -0,0 +1,60 @@
+{
+	"version":"LAYAMATERIAL:02",
+	"props":{
+		"type":"Laya.ShurikenParticleMaterial",
+		"renderStates":[
+			{
+				"cull":0,
+				"blend":1,
+				"srcBlend":770,
+				"dstBlend":1,
+				"depthWrite":false,
+				"depthTest":515
+			}
+		],
+		"name":"d_lizi",
+		"alphaTest":false,
+		"renderQueue":3000,
+		"textures":[
+			{
+				"name":"texture",
+				"path":"../Texture/d_lizi.png",
+				"constructParams":[
+					64,
+					64,
+					1,
+					true
+				],
+				"propertyParams":{
+					"filterMode":1,
+					"wrapModeU":0,
+					"wrapModeV":0,
+					"anisoLevel":1
+				}
+			}
+		],
+		"vectors":[
+			{
+				"name":"tilingOffset",
+				"value":[
+					1,
+					1,
+					0,
+					0
+				]
+			},
+			{
+				"name":"color",
+				"value":[
+					0.5,
+					0.5,
+					0.5,
+					0.5
+				]
+			}
+		],
+		"defines":[
+			"ADDTIVEFOG"
+		]
+	}
+}

+ 60 - 0
color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Materials/guang_2a.lmat

@@ -0,0 +1,60 @@
+{
+	"version":"LAYAMATERIAL:02",
+	"props":{
+		"type":"Laya.ShurikenParticleMaterial",
+		"renderStates":[
+			{
+				"cull":0,
+				"blend":1,
+				"srcBlend":770,
+				"dstBlend":1,
+				"depthWrite":false,
+				"depthTest":515
+			}
+		],
+		"name":"guang_2a",
+		"alphaTest":false,
+		"renderQueue":3000,
+		"textures":[
+			{
+				"name":"texture",
+				"path":"../Texture/guang_2.png",
+				"constructParams":[
+					128,
+					128,
+					1,
+					true
+				],
+				"propertyParams":{
+					"filterMode":1,
+					"wrapModeU":1,
+					"wrapModeV":1,
+					"anisoLevel":1
+				}
+			}
+		],
+		"vectors":[
+			{
+				"name":"tilingOffset",
+				"value":[
+					1,
+					1,
+					0,
+					0
+				]
+			},
+			{
+				"name":"color",
+				"value":[
+					0.5,
+					0.5,
+					0.5,
+					0.5
+				]
+			}
+		],
+		"defines":[
+			"ADDTIVEFOG"
+		]
+	}
+}

+ 60 - 0
color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Materials/guang_3.lmat

@@ -0,0 +1,60 @@
+{
+	"version":"LAYAMATERIAL:02",
+	"props":{
+		"type":"Laya.ShurikenParticleMaterial",
+		"renderStates":[
+			{
+				"cull":0,
+				"blend":1,
+				"srcBlend":770,
+				"dstBlend":1,
+				"depthWrite":false,
+				"depthTest":515
+			}
+		],
+		"name":"guang_3",
+		"alphaTest":false,
+		"renderQueue":3000,
+		"textures":[
+			{
+				"name":"texture",
+				"path":"../Texture/guang_3.png",
+				"constructParams":[
+					128,
+					128,
+					1,
+					true
+				],
+				"propertyParams":{
+					"filterMode":1,
+					"wrapModeU":1,
+					"wrapModeV":1,
+					"anisoLevel":1
+				}
+			}
+		],
+		"vectors":[
+			{
+				"name":"tilingOffset",
+				"value":[
+					1,
+					1,
+					0,
+					0
+				]
+			},
+			{
+				"name":"color",
+				"value":[
+					0.5,
+					0.5,
+					0.5,
+					0.5
+				]
+			}
+		],
+		"defines":[
+			"ADDTIVEFOG"
+		]
+	}
+}

+ 60 - 0
color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Materials/huo_a.lmat

@@ -0,0 +1,60 @@
+{
+	"version":"LAYAMATERIAL:02",
+	"props":{
+		"type":"Laya.ShurikenParticleMaterial",
+		"renderStates":[
+			{
+				"cull":0,
+				"blend":1,
+				"srcBlend":770,
+				"dstBlend":1,
+				"depthWrite":false,
+				"depthTest":515
+			}
+		],
+		"name":"huo_a",
+		"alphaTest":false,
+		"renderQueue":3000,
+		"textures":[
+			{
+				"name":"texture",
+				"path":"../Texture/huo_a.png",
+				"constructParams":[
+					128,
+					128,
+					1,
+					true
+				],
+				"propertyParams":{
+					"filterMode":1,
+					"wrapModeU":0,
+					"wrapModeV":0,
+					"anisoLevel":1
+				}
+			}
+		],
+		"vectors":[
+			{
+				"name":"tilingOffset",
+				"value":[
+					1,
+					1,
+					0,
+					0
+				]
+			},
+			{
+				"name":"color",
+				"value":[
+					0.5,
+					0.5,
+					0.5,
+					0.5
+				]
+			}
+		],
+		"defines":[
+			"ADDTIVEFOG"
+		]
+	}
+}

+ 60 - 0
color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Materials/lizi_zi.lmat

@@ -0,0 +1,60 @@
+{
+	"version":"LAYAMATERIAL:02",
+	"props":{
+		"type":"Laya.ShurikenParticleMaterial",
+		"renderStates":[
+			{
+				"cull":0,
+				"blend":1,
+				"srcBlend":770,
+				"dstBlend":1,
+				"depthWrite":false,
+				"depthTest":515
+			}
+		],
+		"name":"lizi_zi",
+		"alphaTest":false,
+		"renderQueue":3000,
+		"textures":[
+			{
+				"name":"texture",
+				"path":"../Texture/lizi_zise.png",
+				"constructParams":[
+					256,
+					256,
+					1,
+					true
+				],
+				"propertyParams":{
+					"filterMode":1,
+					"wrapModeU":0,
+					"wrapModeV":0,
+					"anisoLevel":1
+				}
+			}
+		],
+		"vectors":[
+			{
+				"name":"tilingOffset",
+				"value":[
+					1,
+					1,
+					0,
+					0
+				]
+			},
+			{
+				"name":"color",
+				"value":[
+					0.5,
+					0.5,
+					0.5,
+					0.5
+				]
+			}
+		],
+		"defines":[
+			"ADDTIVEFOG"
+		]
+	}
+}

+ 60 - 0
color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Materials/masaike.lmat

@@ -0,0 +1,60 @@
+{
+	"version":"LAYAMATERIAL:02",
+	"props":{
+		"type":"Laya.ShurikenParticleMaterial",
+		"renderStates":[
+			{
+				"cull":0,
+				"blend":1,
+				"srcBlend":770,
+				"dstBlend":1,
+				"depthWrite":false,
+				"depthTest":515
+			}
+		],
+		"name":"masaike",
+		"alphaTest":false,
+		"renderQueue":3000,
+		"textures":[
+			{
+				"name":"texture",
+				"path":"../Texture/masaike.png",
+				"constructParams":[
+					256,
+					256,
+					1,
+					true
+				],
+				"propertyParams":{
+					"filterMode":1,
+					"wrapModeU":0,
+					"wrapModeV":0,
+					"anisoLevel":1
+				}
+			}
+		],
+		"vectors":[
+			{
+				"name":"tilingOffset",
+				"value":[
+					1,
+					1,
+					0,
+					0
+				]
+			},
+			{
+				"name":"color",
+				"value":[
+					0.5,
+					0.5,
+					0.5,
+					0.5
+				]
+			}
+		],
+		"defines":[
+			"ADDTIVEFOG"
+		]
+	}
+}

+ 58 - 0
color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Materials/yan.lmat

@@ -0,0 +1,58 @@
+{
+	"version":"LAYAMATERIAL:02",
+	"props":{
+		"type":"Laya.ShurikenParticleMaterial",
+		"renderStates":[
+			{
+				"cull":0,
+				"blend":1,
+				"srcBlend":770,
+				"dstBlend":771,
+				"depthWrite":false,
+				"depthTest":515
+			}
+		],
+		"name":"yan",
+		"alphaTest":false,
+		"renderQueue":3000,
+		"textures":[
+			{
+				"name":"texture",
+				"path":"../Texture/yan.png",
+				"constructParams":[
+					64,
+					64,
+					1,
+					true
+				],
+				"propertyParams":{
+					"filterMode":1,
+					"wrapModeU":0,
+					"wrapModeV":0,
+					"anisoLevel":3
+				}
+			}
+		],
+		"vectors":[
+			{
+				"name":"tilingOffset",
+				"value":[
+					1,
+					1,
+					0,
+					0
+				]
+			},
+			{
+				"name":"color",
+				"value":[
+					1,
+					1,
+					1,
+					1
+				]
+			}
+		],
+		"defines":[]
+	}
+}

BIN
color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Texture/007b.png


BIN
color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Texture/008a.png


BIN
color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Texture/d_lizi.png


BIN
color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Texture/guang_2.png


BIN
color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Texture/guang_3.png


BIN
color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Texture/huo_a.png


BIN
color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Texture/lizi_zise.png


BIN
color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Texture/masaike.png


BIN
color3D_laya/bin/res/LayaScene_tail/Conventional/Assets/FX/Texture/yan.png


+ 827 - 0
color3D_laya/bin/res/LayaScene_tail/Conventional/tuowei1.lh

@@ -0,0 +1,827 @@
+{
+	"version":"LAYAHIERARCHY:01",
+	"data":{
+		"type":"ShuriKenParticle3D",
+		"props":{
+			"name":"tuowei1",
+			"active":true,
+			"isStatic":false,
+			"layer":0,
+			"position":[
+				0,
+				0,
+				0
+			],
+			"rotation":[
+				0.7071068,
+				0,
+				0,
+				-0.7071068
+			],
+			"scale":[
+				5,
+				5,
+				5
+			],
+			"isPerformanceMode":true,
+			"duration":2,
+			"looping":true,
+			"prewarm":false,
+			"startDelayType":0,
+			"startDelay":0,
+			"startDelayMin":0,
+			"startDelayMax":0,
+			"startLifetimeType":0,
+			"startLifetimeConstant":0.4,
+			"startLifetimeConstantMin":0,
+			"startLifetimeConstantMax":0.4,
+			"startLifetimeGradient":{
+				"startLifetimes":[]
+			},
+			"startLifetimeGradientMin":{
+				"startLifetimes":[]
+			},
+			"startLifetimeGradientMax":{
+				"startLifetimes":[]
+			},
+			"startSpeedType":0,
+			"startSpeedConstant":0,
+			"startSpeedConstantMin":0,
+			"startSpeedConstantMax":0,
+			"threeDStartSize":false,
+			"startSizeType":0,
+			"startSizeConstant":0.4,
+			"startSizeConstantMin":0,
+			"startSizeConstantMax":0.4,
+			"startSizeConstantSeparate":[
+				0.4,
+				1,
+				1
+			],
+			"startSizeConstantMinSeparate":[
+				0,
+				0,
+				0
+			],
+			"startSizeConstantMaxSeparate":[
+				0.4,
+				1,
+				1
+			],
+			"threeDStartRotation":false,
+			"startRotationType":2,
+			"startRotationConstant":360,
+			"startRotationConstantMin":-360,
+			"startRotationConstantMax":360,
+			"startRotationConstantSeparate":[
+				0,
+				0,
+				-360
+			],
+			"startRotationConstantMinSeparate":[
+				0,
+				0,
+				360
+			],
+			"startRotationConstantMaxSeparate":[
+				0,
+				0,
+				-360
+			],
+			"randomizeRotationDirection":0,
+			"startColorType":0,
+			"startColorConstant":[
+				1,
+				1,
+				1,
+				1
+			],
+			"startColorConstantMin":[
+				0,
+				0,
+				0,
+				0
+			],
+			"startColorConstantMax":[
+				1,
+				1,
+				1,
+				1
+			],
+			"gravity":[
+				0,
+				-9.81,
+				0
+			],
+			"gravityModifier":0,
+			"simulationSpace":0,
+			"scaleMode":0,
+			"playOnAwake":true,
+			"maxParticles":1000,
+			"autoRandomSeed":true,
+			"randomSeed":1.485528E+09,
+			"emission":{
+				"enable":true,
+				"emissionRate":16,
+				"emissionRateTip":"Time",
+				"bursts":[]
+			},
+			"shape":{
+				"enable":true,
+				"shapeType":3,
+				"sphereRadius":1,
+				"sphereEmitFromShell":false,
+				"sphereRandomDirection":0,
+				"hemiSphereRadius":1,
+				"hemiSphereEmitFromShell":false,
+				"hemiSphereRandomDirection":0,
+				"coneAngle":25,
+				"coneRadius":1,
+				"coneLength":5,
+				"coneEmitType":3,
+				"coneRandomDirection":0,
+				"boxX":0.001,
+				"boxY":0.001,
+				"boxZ":0.001,
+				"boxRandomDirection":0,
+				"circleRadius":1,
+				"circleArc":360,
+				"circleEmitFromEdge":false,
+				"circleRandomDirection":0
+			},
+			"sizeOverLifetime":{
+				"enable":true,
+				"size":{
+					"type":0,
+					"separateAxes":false,
+					"gradient":{
+						"sizes":[
+							{
+								"key":0,
+								"value":0.7235832
+							},
+							{
+								"key":1,
+								"value":1
+							}
+						]
+					},
+					"gradientX":{
+						"sizes":[
+							{
+								"key":0,
+								"value":0.7235832
+							},
+							{
+								"key":1,
+								"value":1
+							}
+						]
+					},
+					"gradientY":{
+						"sizes":[
+							{
+								"key":0,
+								"value":1
+							},
+							{
+								"key":1,
+								"value":1
+							}
+						]
+					},
+					"gradientZ":{
+						"sizes":[
+							{
+								"key":0,
+								"value":1
+							},
+							{
+								"key":1,
+								"value":1
+							}
+						]
+					},
+					"constantMin":0,
+					"constantMax":0,
+					"constantMinSeparate":[
+						0,
+						0,
+						0
+					],
+					"constantMaxSeparate":[
+						0,
+						0,
+						0
+					],
+					"gradientMin":{
+						"sizes":[]
+					},
+					"gradientMax":{
+						"sizes":[
+							{
+								"key":0,
+								"value":0.7235832
+							},
+							{
+								"key":1,
+								"value":1
+							}
+						]
+					},
+					"gradientXMin":{
+						"sizes":[]
+					},
+					"gradientXMax":{
+						"sizes":[
+							{
+								"key":0,
+								"value":0.7235832
+							},
+							{
+								"key":1,
+								"value":1
+							}
+						]
+					},
+					"gradientYMin":{
+						"sizes":[]
+					},
+					"gradientYMax":{
+						"sizes":[
+							{
+								"key":0,
+								"value":1
+							},
+							{
+								"key":1,
+								"value":1
+							}
+						]
+					},
+					"gradientZMin":{
+						"sizes":[]
+					},
+					"gradientZMax":{
+						"sizes":[
+							{
+								"key":0,
+								"value":1
+							},
+							{
+								"key":1,
+								"value":1
+							}
+						]
+					}
+				}
+			},
+			"textureSheetAnimation":{
+				"enable":true,
+				"tiles":[
+					3,
+					3
+				],
+				"type":0,
+				"randomRow":true,
+				"rowIndex":0,
+				"frame":{
+					"type":1,
+					"constant":0,
+					"overTime":{
+						"frames":[
+							{
+								"key":0,
+								"value":0
+							},
+							{
+								"key":1,
+								"value":8.9991
+							}
+						]
+					},
+					"constantMin":0,
+					"constantMax":0,
+					"overTimeMin":{
+						"frames":[]
+					},
+					"overTimeMax":{
+						"frames":[
+							{
+								"key":0,
+								"value":0
+							},
+							{
+								"key":1,
+								"value":8.9991
+							}
+						]
+					}
+				},
+				"startFrame":{
+					"type":0,
+					"constant":0,
+					"constantMin":0,
+					"constantMax":0
+				},
+				"cycles":1,
+				"enableUVChannels":1,
+				"enableUVChannelsTip":"-1"
+			},
+			"renderMode":0,
+			"stretchedBillboardCameraSpeedScale":0,
+			"stretchedBillboardSpeedScale":0,
+			"stretchedBillboardLengthScale":2,
+			"sortingFudge":0,
+			"material":{
+				"type":"Laya.ShurikenParticleMaterial",
+				"path":"Assets/FX/Materials/huo_a.lmat"
+			}
+		},
+		"components":[],
+		"child":[
+			{
+				"type":"ShuriKenParticle3D",
+				"props":{
+					"name":"yan",
+					"active":true,
+					"isStatic":false,
+					"layer":0,
+					"position":[
+						0,
+						0,
+						0
+					],
+					"rotation":[
+						0,
+						0,
+						0,
+						-1
+					],
+					"scale":[
+						1,
+						1,
+						1
+					],
+					"isPerformanceMode":true,
+					"duration":2,
+					"looping":true,
+					"prewarm":false,
+					"startDelayType":0,
+					"startDelay":0,
+					"startDelayMin":0,
+					"startDelayMax":0,
+					"startLifetimeType":2,
+					"startLifetimeConstant":0.8,
+					"startLifetimeConstantMin":0.3,
+					"startLifetimeConstantMax":0.8,
+					"startLifetimeGradient":{
+						"startLifetimes":[]
+					},
+					"startLifetimeGradientMin":{
+						"startLifetimes":[]
+					},
+					"startLifetimeGradientMax":{
+						"startLifetimes":[]
+					},
+					"startSpeedType":0,
+					"startSpeedConstant":0,
+					"startSpeedConstantMin":0,
+					"startSpeedConstantMax":0,
+					"threeDStartSize":false,
+					"startSizeType":2,
+					"startSizeConstant":0.5,
+					"startSizeConstantMin":0.1,
+					"startSizeConstantMax":0.5,
+					"startSizeConstantSeparate":[
+						0.5,
+						1,
+						1
+					],
+					"startSizeConstantMinSeparate":[
+						0.1,
+						0,
+						0
+					],
+					"startSizeConstantMaxSeparate":[
+						0.5,
+						1,
+						1
+					],
+					"threeDStartRotation":false,
+					"startRotationType":2,
+					"startRotationConstant":3600,
+					"startRotationConstantMin":0,
+					"startRotationConstantMax":3600,
+					"startRotationConstantSeparate":[
+						0,
+						0,
+						-3600
+					],
+					"startRotationConstantMinSeparate":[
+						0,
+						0,
+						0
+					],
+					"startRotationConstantMaxSeparate":[
+						0,
+						0,
+						-3600
+					],
+					"randomizeRotationDirection":0,
+					"startColorType":0,
+					"startColorConstant":[
+						1,
+						1,
+						1,
+						1
+					],
+					"startColorConstantMin":[
+						0,
+						0,
+						0,
+						0
+					],
+					"startColorConstantMax":[
+						1,
+						1,
+						1,
+						1
+					],
+					"gravity":[
+						0,
+						-9.81,
+						0
+					],
+					"gravityModifier":0,
+					"simulationSpace":0,
+					"scaleMode":0,
+					"playOnAwake":true,
+					"maxParticles":1000,
+					"autoRandomSeed":true,
+					"randomSeed":4.182723E+09,
+					"emission":{
+						"enable":true,
+						"emissionRate":20,
+						"emissionRateTip":"Time",
+						"bursts":[]
+					},
+					"shape":{
+						"enable":true,
+						"shapeType":3,
+						"sphereRadius":0.42,
+						"sphereEmitFromShell":false,
+						"sphereRandomDirection":0,
+						"hemiSphereRadius":0.42,
+						"hemiSphereEmitFromShell":false,
+						"hemiSphereRandomDirection":0,
+						"coneAngle":10.22,
+						"coneRadius":0.42,
+						"coneLength":5,
+						"coneEmitType":3,
+						"coneRandomDirection":0,
+						"boxX":0.3,
+						"boxY":0.3,
+						"boxZ":0.3,
+						"boxRandomDirection":0,
+						"circleRadius":0.42,
+						"circleArc":0.42,
+						"circleEmitFromEdge":false,
+						"circleRandomDirection":0
+					},
+					"colorOverLifetime":{
+						"enable":true,
+						"color":{
+							"type":1,
+							"constant":[
+								0,
+								0,
+								0,
+								0
+							],
+							"gradient":{
+								"alphas":[
+									{
+										"key":0,
+										"value":0.1960784
+									},
+									{
+										"key":1,
+										"value":0
+									}
+								],
+								"rgbs":[
+									{
+										"key":0,
+										"value":[
+											0.375,
+											0.375,
+											0.375
+										]
+									},
+									{
+										"key":1,
+										"value":[
+											0,
+											0,
+											0
+										]
+									}
+								]
+							},
+							"constantMin":[
+								0,
+								0,
+								0,
+								0
+							],
+							"constantMax":[
+								0,
+								0,
+								0,
+								0
+							],
+							"gradientMax":{
+								"alphas":[
+									{
+										"key":0,
+										"value":0.1960784
+									},
+									{
+										"key":1,
+										"value":0
+									}
+								],
+								"rgbs":[
+									{
+										"key":0,
+										"value":[
+											0.375,
+											0.375,
+											0.375
+										]
+									},
+									{
+										"key":1,
+										"value":[
+											0,
+											0,
+											0
+										]
+									}
+								]
+							}
+						}
+					},
+					"sizeOverLifetime":{
+						"enable":true,
+						"size":{
+							"type":0,
+							"separateAxes":false,
+							"gradient":{
+								"sizes":[
+									{
+										"key":0,
+										"value":0
+									},
+									{
+										"key":0.06026442,
+										"value":0.4572063
+									},
+									{
+										"key":0.3425439,
+										"value":0.6853933
+									},
+									{
+										"key":0.752147,
+										"value":0.724719
+									},
+									{
+										"key":1,
+										"value":1
+									}
+								]
+							},
+							"gradientX":{
+								"sizes":[
+									{
+										"key":0,
+										"value":0
+									},
+									{
+										"key":0.06026442,
+										"value":0.4572063
+									},
+									{
+										"key":0.3425439,
+										"value":0.6853933
+									},
+									{
+										"key":0.752147,
+										"value":0.724719
+									},
+									{
+										"key":1,
+										"value":1
+									}
+								]
+							},
+							"gradientY":{
+								"sizes":[
+									{
+										"key":0,
+										"value":1
+									},
+									{
+										"key":1,
+										"value":1
+									}
+								]
+							},
+							"gradientZ":{
+								"sizes":[
+									{
+										"key":0,
+										"value":1
+									},
+									{
+										"key":1,
+										"value":1
+									}
+								]
+							},
+							"constantMin":0,
+							"constantMax":0,
+							"constantMinSeparate":[
+								0,
+								0,
+								0
+							],
+							"constantMaxSeparate":[
+								0,
+								0,
+								0
+							],
+							"gradientMin":{
+								"sizes":[]
+							},
+							"gradientMax":{
+								"sizes":[
+									{
+										"key":0,
+										"value":0
+									},
+									{
+										"key":0.06026442,
+										"value":0.4572063
+									},
+									{
+										"key":0.3425439,
+										"value":0.6853933
+									},
+									{
+										"key":0.752147,
+										"value":0.724719
+									},
+									{
+										"key":1,
+										"value":1
+									}
+								]
+							},
+							"gradientXMin":{
+								"sizes":[]
+							},
+							"gradientXMax":{
+								"sizes":[
+									{
+										"key":0,
+										"value":0
+									},
+									{
+										"key":0.06026442,
+										"value":0.4572063
+									},
+									{
+										"key":0.3425439,
+										"value":0.6853933
+									},
+									{
+										"key":0.752147,
+										"value":0.724719
+									},
+									{
+										"key":1,
+										"value":1
+									}
+								]
+							},
+							"gradientYMin":{
+								"sizes":[]
+							},
+							"gradientYMax":{
+								"sizes":[
+									{
+										"key":0,
+										"value":1
+									},
+									{
+										"key":1,
+										"value":1
+									}
+								]
+							},
+							"gradientZMin":{
+								"sizes":[]
+							},
+							"gradientZMax":{
+								"sizes":[
+									{
+										"key":0,
+										"value":1
+									},
+									{
+										"key":1,
+										"value":1
+									}
+								]
+							}
+						}
+					},
+					"rotationOverLifetime":{
+						"enable":true,
+						"angularVelocity":{
+							"type":2,
+							"separateAxes":false,
+							"constant":89.99999,
+							"constantMin":-89.99999,
+							"constantMax":89.99999,
+							"constantSeparate":[
+								0,
+								0,
+								-89.99999
+							],
+							"constantMinSeparate":[
+								0,
+								0,
+								-89.99999
+							],
+							"constantMaxSeparate":[
+								0,
+								0,
+								89.99999
+							],
+							"gradient":{
+								"angularVelocitys":[]
+							},
+							"gradientX":{
+								"angularVelocitys":[]
+							},
+							"gradientY":{
+								"angularVelocitys":[]
+							},
+							"gradientZ":{
+								"angularVelocitys":[]
+							},
+							"gradientMin":{
+								"angularVelocitys":[]
+							},
+							"gradientMax":{
+								"angularVelocitys":[]
+							},
+							"gradientXMin":{
+								"angularVelocitys":[]
+							},
+							"gradientXMax":{
+								"angularVelocitys":[]
+							},
+							"gradientYMin":{
+								"angularVelocitys":[]
+							},
+							"gradientYMax":{
+								"angularVelocitys":[]
+							},
+							"gradientZMin":{
+								"angularVelocitys":[]
+							},
+							"gradientZMax":{
+								"angularVelocitys":[]
+							}
+						}
+					},
+					"renderMode":0,
+					"stretchedBillboardCameraSpeedScale":0,
+					"stretchedBillboardSpeedScale":-2.99,
+					"stretchedBillboardLengthScale":-6.27,
+					"sortingFudge":100,
+					"material":{
+						"type":"Laya.ShurikenParticleMaterial",
+						"path":"Assets/FX/Materials/yan.lmat"
+					}
+				},
+				"components":[],
+				"child":[]
+			}
+		]
+	}
+}

Різницю між файлами не показано, бо вона завелика
+ 1297 - 0
color3D_laya/bin/res/LayaScene_tail/Conventional/tuowei2.lh


+ 537 - 0
color3D_laya/bin/res/LayaScene_tail/Conventional/tuowei3.lh

@@ -0,0 +1,537 @@
+{
+	"version":"LAYAHIERARCHY:01",
+	"data":{
+		"type":"ShuriKenParticle3D",
+		"props":{
+			"name":"tuowei3",
+			"active":true,
+			"isStatic":false,
+			"layer":0,
+			"position":[
+				0,
+				0,
+				0
+			],
+			"rotation":[
+				0.7071068,
+				0,
+				0,
+				-0.7071068
+			],
+			"scale":[
+				5,
+				5,
+				5
+			],
+			"isPerformanceMode":true,
+			"duration":2,
+			"looping":true,
+			"prewarm":false,
+			"startDelayType":0,
+			"startDelay":0,
+			"startDelayMin":0,
+			"startDelayMax":0,
+			"startLifetimeType":0,
+			"startLifetimeConstant":0.6,
+			"startLifetimeConstantMin":0,
+			"startLifetimeConstantMax":0.6,
+			"startLifetimeGradient":{
+				"startLifetimes":[]
+			},
+			"startLifetimeGradientMin":{
+				"startLifetimes":[]
+			},
+			"startLifetimeGradientMax":{
+				"startLifetimes":[]
+			},
+			"startSpeedType":0,
+			"startSpeedConstant":0,
+			"startSpeedConstantMin":0,
+			"startSpeedConstantMax":0,
+			"threeDStartSize":false,
+			"startSizeType":2,
+			"startSizeConstant":0.32,
+			"startSizeConstantMin":0.26,
+			"startSizeConstantMax":0.32,
+			"startSizeConstantSeparate":[
+				0.32,
+				1,
+				1
+			],
+			"startSizeConstantMinSeparate":[
+				0.26,
+				0,
+				0
+			],
+			"startSizeConstantMaxSeparate":[
+				0.32,
+				1,
+				1
+			],
+			"threeDStartRotation":false,
+			"startRotationType":2,
+			"startRotationConstant":45,
+			"startRotationConstantMin":-45,
+			"startRotationConstantMax":45,
+			"startRotationConstantSeparate":[
+				0,
+				0,
+				-45
+			],
+			"startRotationConstantMinSeparate":[
+				0,
+				0,
+				45
+			],
+			"startRotationConstantMaxSeparate":[
+				0,
+				0,
+				-45
+			],
+			"randomizeRotationDirection":0,
+			"startColorType":0,
+			"startColorConstant":[
+				0.2665314,
+				0.1691176,
+				1,
+				1
+			],
+			"startColorConstantMin":[
+				0,
+				0,
+				0,
+				0
+			],
+			"startColorConstantMax":[
+				0.2665314,
+				0.1691176,
+				1,
+				1
+			],
+			"gravity":[
+				0,
+				-9.81,
+				0
+			],
+			"gravityModifier":0,
+			"simulationSpace":0,
+			"scaleMode":0,
+			"playOnAwake":true,
+			"maxParticles":1000,
+			"autoRandomSeed":true,
+			"randomSeed":4.243487E+09,
+			"emission":{
+				"enable":true,
+				"emissionRate":16,
+				"emissionRateTip":"Time",
+				"bursts":[]
+			},
+			"shape":{
+				"enable":true,
+				"shapeType":3,
+				"sphereRadius":1,
+				"sphereEmitFromShell":false,
+				"sphereRandomDirection":0,
+				"hemiSphereRadius":1,
+				"hemiSphereEmitFromShell":false,
+				"hemiSphereRandomDirection":0,
+				"coneAngle":25,
+				"coneRadius":1,
+				"coneLength":5,
+				"coneEmitType":3,
+				"coneRandomDirection":0,
+				"boxX":0.001,
+				"boxY":0.001,
+				"boxZ":0.001,
+				"boxRandomDirection":0,
+				"circleRadius":1,
+				"circleArc":360,
+				"circleEmitFromEdge":false,
+				"circleRandomDirection":0
+			},
+			"colorOverLifetime":{
+				"enable":true,
+				"color":{
+					"type":1,
+					"constant":[
+						0,
+						0,
+						0,
+						0
+					],
+					"gradient":{
+						"alphas":[
+							{
+								"key":0,
+								"value":1
+							},
+							{
+								"key":1,
+								"value":0.4509804
+							}
+						],
+						"rgbs":[
+							{
+								"key":0,
+								"value":[
+									1,
+									1,
+									1
+								]
+							},
+							{
+								"key":0.1470665,
+								"value":[
+									1,
+									1,
+									1
+								]
+							},
+							{
+								"key":0.4147097,
+								"value":[
+									1,
+									0.6309827,
+									0.9592808
+								]
+							},
+							{
+								"key":0.4794079,
+								"value":[
+									1,
+									0.6102941,
+									0.9569979
+								]
+							},
+							{
+								"key":1,
+								"value":[
+									0.4068966,
+									0,
+									1
+								]
+							}
+						]
+					},
+					"constantMin":[
+						0,
+						0,
+						0,
+						0
+					],
+					"constantMax":[
+						0,
+						0,
+						0,
+						0
+					],
+					"gradientMax":{
+						"alphas":[
+							{
+								"key":0,
+								"value":1
+							},
+							{
+								"key":1,
+								"value":0.4509804
+							}
+						],
+						"rgbs":[
+							{
+								"key":0,
+								"value":[
+									1,
+									1,
+									1
+								]
+							},
+							{
+								"key":0.1470665,
+								"value":[
+									1,
+									1,
+									1
+								]
+							},
+							{
+								"key":0.4147097,
+								"value":[
+									1,
+									0.6309827,
+									0.9592808
+								]
+							},
+							{
+								"key":0.4794079,
+								"value":[
+									1,
+									0.6102941,
+									0.9569979
+								]
+							},
+							{
+								"key":1,
+								"value":[
+									0.4068966,
+									0,
+									1
+								]
+							}
+						]
+					}
+				}
+			},
+			"sizeOverLifetime":{
+				"enable":true,
+				"size":{
+					"type":0,
+					"separateAxes":false,
+					"gradient":{
+						"sizes":[
+							{
+								"key":0,
+								"value":1
+							},
+							{
+								"key":1,
+								"value":0.3513489
+							}
+						]
+					},
+					"gradientX":{
+						"sizes":[
+							{
+								"key":0,
+								"value":1
+							},
+							{
+								"key":1,
+								"value":0.3513489
+							}
+						]
+					},
+					"gradientY":{
+						"sizes":[
+							{
+								"key":0,
+								"value":1
+							},
+							{
+								"key":1,
+								"value":1
+							}
+						]
+					},
+					"gradientZ":{
+						"sizes":[
+							{
+								"key":0,
+								"value":1
+							},
+							{
+								"key":1,
+								"value":1
+							}
+						]
+					},
+					"constantMin":0,
+					"constantMax":0,
+					"constantMinSeparate":[
+						0,
+						0,
+						0
+					],
+					"constantMaxSeparate":[
+						0,
+						0,
+						0
+					],
+					"gradientMin":{
+						"sizes":[]
+					},
+					"gradientMax":{
+						"sizes":[
+							{
+								"key":0,
+								"value":1
+							},
+							{
+								"key":1,
+								"value":0.3513489
+							}
+						]
+					},
+					"gradientXMin":{
+						"sizes":[]
+					},
+					"gradientXMax":{
+						"sizes":[
+							{
+								"key":0,
+								"value":1
+							},
+							{
+								"key":1,
+								"value":0.3513489
+							}
+						]
+					},
+					"gradientYMin":{
+						"sizes":[]
+					},
+					"gradientYMax":{
+						"sizes":[
+							{
+								"key":0,
+								"value":1
+							},
+							{
+								"key":1,
+								"value":1
+							}
+						]
+					},
+					"gradientZMin":{
+						"sizes":[]
+					},
+					"gradientZMax":{
+						"sizes":[
+							{
+								"key":0,
+								"value":1
+							},
+							{
+								"key":1,
+								"value":1
+							}
+						]
+					}
+				}
+			},
+			"rotationOverLifetime":{
+				"enable":true,
+				"angularVelocity":{
+					"type":2,
+					"separateAxes":false,
+					"constant":45,
+					"constantMin":-45,
+					"constantMax":45,
+					"constantSeparate":[
+						0,
+						0,
+						-45
+					],
+					"constantMinSeparate":[
+						0,
+						0,
+						-45
+					],
+					"constantMaxSeparate":[
+						0,
+						0,
+						45
+					],
+					"gradient":{
+						"angularVelocitys":[]
+					},
+					"gradientX":{
+						"angularVelocitys":[]
+					},
+					"gradientY":{
+						"angularVelocitys":[]
+					},
+					"gradientZ":{
+						"angularVelocitys":[]
+					},
+					"gradientMin":{
+						"angularVelocitys":[]
+					},
+					"gradientMax":{
+						"angularVelocitys":[]
+					},
+					"gradientXMin":{
+						"angularVelocitys":[]
+					},
+					"gradientXMax":{
+						"angularVelocitys":[]
+					},
+					"gradientYMin":{
+						"angularVelocitys":[]
+					},
+					"gradientYMax":{
+						"angularVelocitys":[]
+					},
+					"gradientZMin":{
+						"angularVelocitys":[]
+					},
+					"gradientZMax":{
+						"angularVelocitys":[]
+					}
+				}
+			},
+			"textureSheetAnimation":{
+				"enable":true,
+				"tiles":[
+					3,
+					3
+				],
+				"type":0,
+				"randomRow":true,
+				"rowIndex":0,
+				"frame":{
+					"type":1,
+					"constant":0,
+					"overTime":{
+						"frames":[
+							{
+								"key":0,
+								"value":0
+							},
+							{
+								"key":1,
+								"value":8.9991
+							}
+						]
+					},
+					"constantMin":0,
+					"constantMax":0,
+					"overTimeMin":{
+						"frames":[]
+					},
+					"overTimeMax":{
+						"frames":[
+							{
+								"key":0,
+								"value":0
+							},
+							{
+								"key":1,
+								"value":8.9991
+							}
+						]
+					}
+				},
+				"startFrame":{
+					"type":0,
+					"constant":0,
+					"constantMin":0,
+					"constantMax":0
+				},
+				"cycles":1,
+				"enableUVChannels":1,
+				"enableUVChannelsTip":"-1"
+			},
+			"renderMode":0,
+			"stretchedBillboardCameraSpeedScale":0,
+			"stretchedBillboardSpeedScale":0,
+			"stretchedBillboardLengthScale":2,
+			"sortingFudge":0,
+			"material":{
+				"type":"Laya.ShurikenParticleMaterial",
+				"path":"Assets/FX/Materials/masaike.lmat"
+			}
+		},
+		"components":[],
+		"child":[]
+	}
+}

Різницю між файлами не показано, бо вона завелика
+ 1084 - 0
color3D_laya/bin/res/LayaScene_tail/Conventional/tuowei4.lh


+ 616 - 0
color3D_laya/bin/res/LayaScene_tail/Conventional/tuowei5.lh

@@ -0,0 +1,616 @@
+{
+	"version":"LAYAHIERARCHY:01",
+	"data":{
+		"type":"ShuriKenParticle3D",
+		"props":{
+			"name":"tuowei5",
+			"active":true,
+			"isStatic":false,
+			"layer":0,
+			"position":[
+				0,
+				0,
+				0
+			],
+			"rotation":[
+				0.7071068,
+				0,
+				0,
+				-0.7071068
+			],
+			"scale":[
+				5,
+				5,
+				5
+			],
+			"isPerformanceMode":true,
+			"duration":1,
+			"looping":true,
+			"prewarm":false,
+			"startDelayType":0,
+			"startDelay":0,
+			"startDelayMin":0,
+			"startDelayMax":0,
+			"startLifetimeType":2,
+			"startLifetimeConstant":1,
+			"startLifetimeConstantMin":0.8,
+			"startLifetimeConstantMax":1,
+			"startLifetimeGradient":{
+				"startLifetimes":[]
+			},
+			"startLifetimeGradientMin":{
+				"startLifetimes":[]
+			},
+			"startLifetimeGradientMax":{
+				"startLifetimes":[]
+			},
+			"startSpeedType":0,
+			"startSpeedConstant":0,
+			"startSpeedConstantMin":0,
+			"startSpeedConstantMax":0,
+			"threeDStartSize":false,
+			"startSizeType":2,
+			"startSizeConstant":0.5,
+			"startSizeConstantMin":0.1,
+			"startSizeConstantMax":0.5,
+			"startSizeConstantSeparate":[
+				0.5,
+				1,
+				1
+			],
+			"startSizeConstantMinSeparate":[
+				0.1,
+				0,
+				0
+			],
+			"startSizeConstantMaxSeparate":[
+				0.5,
+				1,
+				1
+			],
+			"threeDStartRotation":false,
+			"startRotationType":2,
+			"startRotationConstant":3600,
+			"startRotationConstantMin":0,
+			"startRotationConstantMax":3600,
+			"startRotationConstantSeparate":[
+				0,
+				0,
+				-3600
+			],
+			"startRotationConstantMinSeparate":[
+				0,
+				0,
+				0
+			],
+			"startRotationConstantMaxSeparate":[
+				0,
+				0,
+				-3600
+			],
+			"randomizeRotationDirection":0,
+			"startColorType":2,
+			"startColorConstant":[
+				0.7215686,
+				1,
+				0,
+				0.966
+			],
+			"startColorConstantMin":[
+				1,
+				1,
+				0.5058824,
+				0.803
+			],
+			"startColorConstantMax":[
+				0.7215686,
+				1,
+				0,
+				0.966
+			],
+			"gravity":[
+				0,
+				-9.81,
+				0
+			],
+			"gravityModifier":0,
+			"simulationSpace":0,
+			"scaleMode":0,
+			"playOnAwake":true,
+			"maxParticles":1000,
+			"autoRandomSeed":true,
+			"randomSeed":1.767371E+09,
+			"emission":{
+				"enable":true,
+				"emissionRate":100,
+				"emissionRateTip":"Time",
+				"bursts":[]
+			},
+			"shape":{
+				"enable":true,
+				"shapeType":0,
+				"sphereRadius":0.05,
+				"sphereEmitFromShell":false,
+				"sphereRandomDirection":0,
+				"hemiSphereRadius":0.05,
+				"hemiSphereEmitFromShell":false,
+				"hemiSphereRandomDirection":0,
+				"coneAngle":0,
+				"coneRadius":0.05,
+				"coneLength":5,
+				"coneEmitType":0,
+				"coneRandomDirection":0,
+				"boxX":1,
+				"boxY":1,
+				"boxZ":1,
+				"boxRandomDirection":0,
+				"circleRadius":0.05,
+				"circleArc":0,
+				"circleEmitFromEdge":false,
+				"circleRandomDirection":0
+			},
+			"colorOverLifetime":{
+				"enable":true,
+				"color":{
+					"type":1,
+					"constant":[
+						0,
+						0,
+						0,
+						0
+					],
+					"gradient":{
+						"alphas":[
+							{
+								"key":0,
+								"value":1
+							},
+							{
+								"key":1,
+								"value":1
+							}
+						],
+						"rgbs":[
+							{
+								"key":0,
+								"value":[
+									1,
+									1,
+									1
+								]
+							},
+							{
+								"key":1,
+								"value":[
+									0.5529412,
+									1,
+									0
+								]
+							}
+						]
+					},
+					"constantMin":[
+						0,
+						0,
+						0,
+						0
+					],
+					"constantMax":[
+						0,
+						0,
+						0,
+						0
+					],
+					"gradientMax":{
+						"alphas":[
+							{
+								"key":0,
+								"value":1
+							},
+							{
+								"key":1,
+								"value":1
+							}
+						],
+						"rgbs":[
+							{
+								"key":0,
+								"value":[
+									1,
+									1,
+									1
+								]
+							},
+							{
+								"key":1,
+								"value":[
+									0.5529412,
+									1,
+									0
+								]
+							}
+						]
+					}
+				}
+			},
+			"sizeOverLifetime":{
+				"enable":true,
+				"size":{
+					"type":0,
+					"separateAxes":false,
+					"gradient":{
+						"sizes":[
+							{
+								"key":0,
+								"value":0
+							},
+							{
+								"key":0.03523176,
+								"value":0.6798319
+							},
+							{
+								"key":0.09810448,
+								"value":0.5198048
+							},
+							{
+								"key":0.147348,
+								"value":0.9603745
+							},
+							{
+								"key":0.1808006,
+								"value":0.4681727
+							},
+							{
+								"key":0.2462977,
+								"value":0.9369935
+							},
+							{
+								"key":0.3159329,
+								"value":0.5393258
+							},
+							{
+								"key":0.3970962,
+								"value":0.8249791
+							},
+							{
+								"key":0.4738327,
+								"value":0.5570724
+							},
+							{
+								"key":0.5307586,
+								"value":0.7343484
+							},
+							{
+								"key":0.5957963,
+								"value":0.5933737
+							},
+							{
+								"key":0.6797537,
+								"value":0.6223261
+							},
+							{
+								"key":0.7231522,
+								"value":0.5140496
+							},
+							{
+								"key":0.7865841,
+								"value":0.5228869
+							},
+							{
+								"key":0.8362216,
+								"value":0.3361769
+							},
+							{
+								"key":0.9332935,
+								"value":0.2763167
+							},
+							{
+								"key":1,
+								"value":0
+							}
+						]
+					},
+					"gradientX":{
+						"sizes":[
+							{
+								"key":0,
+								"value":0
+							},
+							{
+								"key":0.03523176,
+								"value":0.6798319
+							},
+							{
+								"key":0.09810448,
+								"value":0.5198048
+							},
+							{
+								"key":0.147348,
+								"value":0.9603745
+							},
+							{
+								"key":0.1808006,
+								"value":0.4681727
+							},
+							{
+								"key":0.2462977,
+								"value":0.9369935
+							},
+							{
+								"key":0.3159329,
+								"value":0.5393258
+							},
+							{
+								"key":0.3970962,
+								"value":0.8249791
+							},
+							{
+								"key":0.4738327,
+								"value":0.5570724
+							},
+							{
+								"key":0.5307586,
+								"value":0.7343484
+							},
+							{
+								"key":0.5957963,
+								"value":0.5933737
+							},
+							{
+								"key":0.6797537,
+								"value":0.6223261
+							},
+							{
+								"key":0.7231522,
+								"value":0.5140496
+							},
+							{
+								"key":0.7865841,
+								"value":0.5228869
+							},
+							{
+								"key":0.8362216,
+								"value":0.3361769
+							},
+							{
+								"key":0.9332935,
+								"value":0.2763167
+							},
+							{
+								"key":1,
+								"value":0
+							}
+						]
+					},
+					"gradientY":{
+						"sizes":[
+							{
+								"key":0,
+								"value":1
+							},
+							{
+								"key":1,
+								"value":1
+							}
+						]
+					},
+					"gradientZ":{
+						"sizes":[
+							{
+								"key":0,
+								"value":1
+							},
+							{
+								"key":1,
+								"value":1
+							}
+						]
+					},
+					"constantMin":0,
+					"constantMax":0,
+					"constantMinSeparate":[
+						0,
+						0,
+						0
+					],
+					"constantMaxSeparate":[
+						0,
+						0,
+						0
+					],
+					"gradientMin":{
+						"sizes":[]
+					},
+					"gradientMax":{
+						"sizes":[
+							{
+								"key":0,
+								"value":0
+							},
+							{
+								"key":0.03523176,
+								"value":0.6798319
+							},
+							{
+								"key":0.09810448,
+								"value":0.5198048
+							},
+							{
+								"key":0.147348,
+								"value":0.9603745
+							},
+							{
+								"key":0.1808006,
+								"value":0.4681727
+							},
+							{
+								"key":0.2462977,
+								"value":0.9369935
+							},
+							{
+								"key":0.3159329,
+								"value":0.5393258
+							},
+							{
+								"key":0.3970962,
+								"value":0.8249791
+							},
+							{
+								"key":0.4738327,
+								"value":0.5570724
+							},
+							{
+								"key":0.5307586,
+								"value":0.7343484
+							},
+							{
+								"key":0.5957963,
+								"value":0.5933737
+							},
+							{
+								"key":0.6797537,
+								"value":0.6223261
+							},
+							{
+								"key":0.7231522,
+								"value":0.5140496
+							},
+							{
+								"key":0.7865841,
+								"value":0.5228869
+							},
+							{
+								"key":0.8362216,
+								"value":0.3361769
+							},
+							{
+								"key":0.9332935,
+								"value":0.2763167
+							},
+							{
+								"key":1,
+								"value":0
+							}
+						]
+					},
+					"gradientXMin":{
+						"sizes":[]
+					},
+					"gradientXMax":{
+						"sizes":[
+							{
+								"key":0,
+								"value":0
+							},
+							{
+								"key":0.03523176,
+								"value":0.6798319
+							},
+							{
+								"key":0.09810448,
+								"value":0.5198048
+							},
+							{
+								"key":0.147348,
+								"value":0.9603745
+							},
+							{
+								"key":0.1808006,
+								"value":0.4681727
+							},
+							{
+								"key":0.2462977,
+								"value":0.9369935
+							},
+							{
+								"key":0.3159329,
+								"value":0.5393258
+							},
+							{
+								"key":0.3970962,
+								"value":0.8249791
+							},
+							{
+								"key":0.4738327,
+								"value":0.5570724
+							},
+							{
+								"key":0.5307586,
+								"value":0.7343484
+							},
+							{
+								"key":0.5957963,
+								"value":0.5933737
+							},
+							{
+								"key":0.6797537,
+								"value":0.6223261
+							},
+							{
+								"key":0.7231522,
+								"value":0.5140496
+							},
+							{
+								"key":0.7865841,
+								"value":0.5228869
+							},
+							{
+								"key":0.8362216,
+								"value":0.3361769
+							},
+							{
+								"key":0.9332935,
+								"value":0.2763167
+							},
+							{
+								"key":1,
+								"value":0
+							}
+						]
+					},
+					"gradientYMin":{
+						"sizes":[]
+					},
+					"gradientYMax":{
+						"sizes":[
+							{
+								"key":0,
+								"value":1
+							},
+							{
+								"key":1,
+								"value":1
+							}
+						]
+					},
+					"gradientZMin":{
+						"sizes":[]
+					},
+					"gradientZMax":{
+						"sizes":[
+							{
+								"key":0,
+								"value":1
+							},
+							{
+								"key":1,
+								"value":1
+							}
+						]
+					}
+				}
+			},
+			"renderMode":0,
+			"stretchedBillboardCameraSpeedScale":0,
+			"stretchedBillboardSpeedScale":0,
+			"stretchedBillboardLengthScale":2,
+			"sortingFudge":0,
+			"material":{
+				"type":"Laya.ShurikenParticleMaterial",
+				"path":"Assets/FX/Materials/008a.lmat"
+			}
+		},
+		"components":[],
+		"child":[]
+	}
+}

Різницю між файлами не показано, бо вона завелика
+ 1 - 0
color3D_laya/bin/res/config/nativefiles.txt


+ 3 - 3
color3D_laya/laya/.laya

@@ -1,6 +1,6 @@
 <project version="2.0">
-   <asynRes>img,temp,sound                                       </asynRes>
-   <unDealRes>embed                                       </unDealRes>
+   <asynRes>img,temp,sound                                          </asynRes>
+   <unDealRes>embed                                          </unDealRes>
    <resTypes>png,jpg   </resTypes>
    <resExportPath>bin/res/atlas   </resExportPath>
    <asynResExportPath>bin   </asynResExportPath>
@@ -15,7 +15,7 @@ var Dialog=laya.ui.Dialog;]]>   </codeImportsJS>
    <shareResPath/>
    <codeType>1   </codeType>
    <resCanCompress/>
-   <resPublishQuality>80                                       </resPublishQuality>
+   <resPublishQuality>80                                          </resPublishQuality>
    <langPath/>
    <defaultFont/>
    <codeImportsTS><![CDATA[import View=Laya.View;

+ 0 - 80
color3D_laya/src/AssetController.ts

@@ -1,80 +0,0 @@
-
-import GameDefined from "./script/GameLogic/GameDefined";
-import { SceneController } from "./script/GameLogic/SceneController";
-import OimoHelper from "./script/Oimo/OimoHelper";
-import ViewManager, { ViewType } from "./script/GameLogic/ViewManager";
-
-export default class AssetController {
-    private static instance: AssetController;
-    public static get Instance(): AssetController {
-        return this.instance || (this.instance = new AssetController());
-    }
-
-    public GameStart() {
-        Laya.loader.create(GameDefined.main_path, new Laya.Handler(this, (res) => {
-            var _scene = res as Laya.Scene3D;
-            OimoHelper.Inst.createWolrd();
-            SceneController.Instance.Init(_scene);
-            ViewManager.Instance.OpenView(ViewType.game_ui);
-        }));
-    }
-
-    // private CreateBody() {
-    //     var panel = this.panel.addComponent(StandBehaviour) as StandBehaviour;
-    //     var data = new OimoBodyData();
-    //     data.move = false;
-    //     data.type = "box";
-    //     panel.init(data);
-    //     for (let index = 0; index < this.move._children.length; index++) {
-    //         const element = this.move._children[index];
-    //         var shell = element.addComponent(ShellBehaviour) as ShellBehaviour;
-    //         var data1 = new OimoBodyData();
-    //         data1.move = true;
-    //         data1.type = "box";
-    //         data1.friction=3;
-    //         shell.init(data1);
-    //     }
-    //     var player = this.cube1.addComponent(PlayerBehaviour) as PlayerBehaviour;
-    //     var data2 = new OimoBodyData();
-    //     data2.move = true;
-    //     data2.type = "box";
-    //     data2.kinematic = true;
-    //     data2.name = 1000;
-    //     player.init(data2);
-    // }
-
-    private MouseContr() {
-        Laya.stage.on(Laya.Event.MOUSE_DOWN, this, this.OnClickDown);
-        Laya.stage.on(Laya.Event.MOUSE_UP, this, this.OnClickUp);
-        Laya.stage.on(Laya.Event.MOUSE_OUT, this, this.OnClickUp);
-    }
-
-    OnClickDown(e: Laya.Event) {
-
-
-        Laya.stage.on(Laya.Event.MOUSE_MOVE, this, this.OnSlider);
-        this.curMousePos = new Laya.Vector3(Laya.MouseManager.instance.mouseX, Laya.MouseManager.instance.mouseY);
-        console.log(this.curMousePos)
-    }
-    OnClickUp() {
-
-        Laya.stage.off(Laya.Event.MOUSE_MOVE, this, this.OnSlider);
-        var MousePos = new Laya.Vector3(Laya.MouseManager.instance.mouseX, Laya.MouseManager.instance.mouseY);
-        console.log(MousePos)
-    }
-
-    curMousePos: Laya.Vector3;
-    OnSlider() {
-        var MousePos = new Laya.Vector3(Laya.MouseManager.instance.mouseX, Laya.MouseManager.instance.mouseY);
-        var offestX = MousePos.x - this.curMousePos.x;
-        var offestZ = MousePos.y - this.curMousePos.y;
-        if (offestX > 0) offestX = offestX < 0.1 ? offestX : 0.1;
-        if (offestX < 0) offestX = offestX > -0.1 ? offestX : -0.1;
-        if (offestZ > 0) offestZ = offestZ < 0.1 ? offestZ : 0.1;
-        if (offestZ < 0) offestZ = offestZ > -0.1 ? offestZ : -0.1;
-        console.log(offestX);
-        // this.cube1.transform.localPositionX += offestX;
-        // this.cube1.transform.localPositionZ += offestZ;
-        this.curMousePos = new Laya.Vector3(Laya.MouseManager.instance.mouseX, Laya.MouseManager.instance.mouseY);;
-    }
-}

+ 6 - 2
color3D_laya/src/Main.ts

@@ -1,8 +1,10 @@
 import GameConfig from "./GameConfig";
-import AssetController from "./AssetController";
+import AssetController from "./script/GameLogic/AssetController";
+import ResourceLoad from "./script/GameLogic/ResourceLoad";
 
 export class Main {
 
+	public static VER = "1.0.0"; 
 	public static nowratio: number;
 	public static isWx: boolean;
 	constructor() {
@@ -35,7 +37,9 @@ export class Main {
 	}
 
 	onConfigLoaded(): void {
-		AssetController.Instance.GameStart();
+		ResourceLoad.InitNativefiles(() => {
+			AssetController.Instance.GameStart();
+		});
 	}
 }
 //激活启动类

+ 18 - 13
color3D_laya/src/script/Behaviour/PassivityBehaviour.ts

@@ -1,25 +1,22 @@
 
 import OimoRigidBody from "../Oimo/OimoRigibody";
 import OimoBodyData from "../Oimo/OimoBodyData";
+import GameDefined, { ColorType } from "../GameLogic/GameDefined";
+import Sprite3D = Laya.Sprite3D;
+import { PlayerController } from "../GameLogic/PlayerController";
 export default class PassivityBehaviour extends OimoRigidBody {
 
     public constructor() {
         super();
     }
 
-    // private disZ: number = 35;
-    // private disY: number = -2;
-    // private speed: number = 500;
-    // private tempvev: Laya.Vector3 = new Laya.Vector3();
-    // private velocity: Laya.Vector3;
-    // private tragetZ: number = 0;
-    // private force: Laya.Vector3 = new Laya.Vector3();
-    public init(data?: OimoBodyData) {
+    private player: Sprite3D;
+
+    public init(color, data?: OimoBodyData) {
+
         if (!data) data = new OimoBodyData();
         data.move = true;
-      //  data.density=0;
-        //data.friction=0;
-        //data.restitution=2;
+        this.color = color;
         super.init(data);
     }
     // public setData(vec: Laya.Vector3) {
@@ -36,14 +33,22 @@ export default class PassivityBehaviour extends OimoRigidBody {
     }
 
     public onStart() {
+        this.player = PlayerController.Instance.player;
     }
 
     public onUpdate() {
         super.onUpdate();
-
-        super.checkContact(1111);
+        super.checkContact(GameDefined.playerbodyname);
+        this.CheckDisDestory();
     }
 
+    private CheckDisDestory() {
+        if (!this.player) this.player = PlayerController.Instance.player;
+        var dis = this.player.transform.position.z - this.transform.position.z;
+        if (dis >= GameDefined.disforDesObs) {
+            this.sprite.destroy(true);
+        }
+    }
     public onDisable() {
 
         if (this.body && this.body.parent) this.body.dispose();

+ 4 - 2
color3D_laya/src/script/Behaviour/StandBehaviour.ts

@@ -8,7 +8,7 @@ export default class StandBehaviour extends OimoRigidBody {
     public constructor() {
         super();
     }
-    public init(data: OimoBodyData) {
+    public init(data?: OimoBodyData) {
         if(!data)data=new OimoBodyData();
         data.move = false;
         super.init(data);
@@ -18,7 +18,9 @@ export default class StandBehaviour extends OimoRigidBody {
 
 
     }
-
+    public checkContact(name) {
+        return false;
+    }
     public onUpdate() {
 
     }

+ 22 - 0
color3D_laya/src/script/GameLogic/AssetController.ts

@@ -0,0 +1,22 @@
+import GameDefined from "./GameDefined";
+import OimoHelper from "../Oimo/OimoHelper";
+import { SceneController } from "./SceneController";
+import ViewManager, { ViewType } from "./ViewManager";
+
+
+
+export default class AssetController {
+    private static instance: AssetController;
+    public static get Instance(): AssetController {
+        return this.instance || (this.instance = new AssetController());
+    }
+
+    public GameStart() {
+        Laya.loader.create(GameDefined.main_path, new Laya.Handler(this, (res) => {
+            var _scene = res as Laya.Scene3D;
+            OimoHelper.Inst.createWolrd();
+            SceneController.Instance.Init(_scene);
+            ViewManager.Instance.OpenView(ViewType.game_ui);
+        }));
+    }
+}

+ 1 - 1
color3D_laya/src/script/GameLogic/CameraBehavior.ts

@@ -37,7 +37,7 @@ export default class CameraBehavior extends Laya.Script3D {
 
         // GameDefined.minDis= Main.nowratio * GameDefined.minDis * origratio;
         // console.log(GameDefined.minDis);
-     var dis=   Vector3.distance( PlayerController.Instance.player.transform.position,this._tran.position)
+     //var dis=   Vector3.distance( PlayerController.Instance.player.transform.position,this._tran.position)
     }
 
     onUpdate() {

+ 15 - 1
color3D_laya/src/script/GameLogic/GameController.ts

@@ -1,3 +1,4 @@
+import OimoHelper from "../Oimo/OimoHelper";
 
 export class GameController {
     private static instance: GameController;
@@ -5,5 +6,18 @@ export class GameController {
         return GameController.instance || (GameController.instance = new GameController());
     }
 
-    public gamestart=false;
+    public gamestart = false;
+
+
+    public StartGame() {
+        this.gamestart = true;
+    }
+
+    public GameOver() {
+        OimoHelper.Inst.clearWorld();
+    }
+
+    public ResetGame() {
+
+    }
 }

+ 19 - 1
color3D_laya/src/script/GameLogic/GameDefined.ts

@@ -4,6 +4,12 @@ export default class GameDefined {
     public static main_path = "res/LayaScene_main/Conventional/main.ls";
 
 
+    public static prefab_path = "res/LayaScene_props/Conventional/";
+
+    public static particle_path = "res/LayaScene_tail/Conventional/tuowei";
+
+
+    public static disforDesObs = 5;
 
     public static playerbodyname = 1111;
 
@@ -14,8 +20,20 @@ export default class GameDefined {
     public static x_player = 5;// 玩家可以在左右的距离
 
     public static moveSpeed = 0.04;
-}
 
+    public static showObsNum = 3;
+
+    public static ColorValue = {
+        1: [1, 1, 1, 1],
+        2: [1, 0.2, 0.2, 1],
+        3: [0.9, 1, 0, 1],
+        4: [1, 0, 0.86, 1],
+        5: [0, 0, 0, 1],
+    };
+}
+export class AppSetting {
+    public static cdnpath = "";
+}
 export enum BodyType {
     sphere = 8,
     cylinder = 9,

+ 30 - 0
color3D_laya/src/script/GameLogic/Obs.ts

@@ -0,0 +1,30 @@
+
+// import Sprite3D = Laya.Sprite3D;
+// import Transform3D = Laya.Transform3D;
+// import GameDefined from "./GameDefined";
+// export class Obs extends Laya.Script3D {
+//     constructor() {
+//         super();
+//     }
+
+//     private self: Sprite3D;
+//     private _tran: Transform3D;
+
+//     private player: Sprite3D;
+//     onAwake() {
+//         this.self = this.owner as Laya.MeshSprite3D;
+//         this._tran = this.self.transform;
+//     }
+
+
+//     onUpdate() {
+//         if (!this.player) return;
+//         var dis = this.player.transform.localPositionZ - this._tran.localPositionZ;
+//         if (dis >= GameDefined.disforDesObs) {
+//             this.self.destroy(true);
+//         }
+//     }
+//     onDestroy() {
+//         Laya.timer.clearAll(this);
+//     }
+// }

+ 161 - 8
color3D_laya/src/script/GameLogic/ObsController.ts

@@ -1,21 +1,174 @@
 import Sprite3D = Laya.Sprite3D;
 import PassivityBehaviour from "../Behaviour/PassivityBehaviour";
+import Dictionary from "../Util/Dictionary";
+import GameDefined, { ColorType } from "./GameDefined";
+import ResourceLoad from "./ResourceLoad";
+import { SceneController } from "./SceneController";
+import MeshSprite3D = Laya.MeshSprite3D;
+import BlinnPhongMaterial = Laya.BlinnPhongMaterial;
 export class ObsController {
     private static instance: ObsController;
     public static get Instance(): ObsController {
         return ObsController.instance || (ObsController.instance = new ObsController());
     }
+    constructor() {
+        this.propsDic = new Dictionary();
+    }
+
+    // public Init(obs: any[]) {
+    //     if (obs && obs.length > 0) {
+    //         for (let index = 0; index < obs.length; index++) {
+    //             for (let j = 0; j < obs[index]._children.length; j++) {
+    //                 const element = obs[index].getChildAt(j) as Sprite3D;
+    //                 var _o = element.getChildAt(0);
+    //                 var _pb = _o.addComponent(PassivityBehaviour) as PassivityBehaviour;
+    //                 _pb.init();
+    //             }
+    //         }
+    //     }
+    // }
+
+
+    public temppath = [
+        { "prop1": 5 },
+        { "prop2": 15 },
+        { "prop3": 26 },
+        { "prop4": 37 },
+        { "prop5": 47 },
+        { "prop3": 57 },
+        { "prop4": 67 },
+        { "prop5": 77 },
+        { "prop4": 87 },
+        { "prop3": 107 },
+        { "prop1": 117 }
+    ]
+
+
+
+
+
+
+
 
-    public Init(obs: any[]) {
-        if (obs && obs.length > 0) {
-            for (let index = 0; index < obs.length; index++) {
-                for (let j = 0; j < obs[index]._children.length; j++) {
-                    const element = obs[index].getChildAt(j) as Sprite3D;
-                    var _o = element.getChildAt(0);
-                    var _pb = _o.addComponent(PassivityBehaviour)as PassivityBehaviour;
-                    _pb.init();
+
+
+
+    private nowCreateId = 0;
+    public CreateById(id: number) {
+
+    }
+    public CreateByOrder(isfirst = false) {
+        if (isfirst) {
+            for (let index = 0; index < GameDefined.showObsNum; index++) {
+                const element = this.temppath[index];
+                for (const key in element) {
+                    if (element.hasOwnProperty(key)) {
+                        const value = element[key];
+                        this.CreateProp(key, value);
+                    }
                 }
             }
+            this.nowCreateId = GameDefined.showObsNum - 1;
+        } else {
+            this.nowCreateId++;
+            if (this.nowCreateId == this.temppath.length) return;
+            const element = this.temppath[this.nowCreateId];
+            for (const key in element) {
+                if (element.hasOwnProperty(key)) {
+                    const value = element[key];
+                    this.CreateProp(key, value);
+                }
+            }
+        }
+    }
+
+
+    public obsList = [];
+    private CreateProp(name: string, dis: number) {
+        if (!this.propsDic.has(name)) return;
+        var go = this.propsDic.get(name);
+        var o = Sprite3D.instantiate(go);
+        this.obsList.push(o);
+        SceneController.Instance.road_node.addChild(o);
+        //o.addComponent(Obs);
+        o.transform.localPositionZ = dis;
+        o.transform.localPositionY = 0;
+        o.transform.localPositionX = 0;
+        for (let j = 0; j < o._children.length; j++) {
+            Laya.MeshSprite3D
+            const element = o.getChildAt(j) as Sprite3D;
+            var _o = element.getChildAt(0) as MeshSprite3D;
+            // var c=_o.getChildAt(0);
+            this.SetMat(_o, ColorType.white);
+            var _pb = _o.addComponent(PassivityBehaviour) as PassivityBehaviour;
+            _pb.init(ColorType.white);
         }
     }
+
+    private SetMat(_o: MeshSprite3D, colortype: ColorType) {
+        var mesh = _o.meshRenderer;
+        if (mesh) {
+            var mat = mesh.material as BlinnPhongMaterial;
+            var color = GameDefined.ColorValue[colortype];
+            mat.albedoColorA = color[0];
+            mat.albedoColorB = color[1];
+            mat.albedoColorG = color[2];
+            mat.albedoColorR = color[3];
+        }
+        if (_o._children.length > 0) {
+            for (let index = 0; index < _o._children.length; index++) {
+                const element = _o._children[index];
+                this.SetMat(element, colortype);
+            }
+        }
+    }
+
+    //清空obs列表
+    public ClearObsList() {
+        if (this.obsList.length > 0) {
+            for (let index = 0; index < this.obsList.length; index++) {
+                const element = this.obsList[index];
+                if (!element.destroyed) element.destroy(true);
+            }
+            this.obsList = [];
+        }
+    }
+
+
+
+
+
+    private propsDic: Dictionary;//所有组件预设字典  
+    public LoadProps(paths: string[], callback?: Function) {
+        var _paths = [];
+        var _pathObj = {};
+        for (let index = 0; index < paths.length; index++) {
+            const element = paths[index];
+            if (!this.propsDic.has(element)) {
+                var p = GameDefined.prefab_path + element + ".lh";
+                _pathObj[element] = p;
+                _paths.push(p);
+            }
+        }
+        if (_paths.length > 0) {
+            ResourceLoad.LoadResource(_paths, () => {
+                //加载完成初始化
+                for (const key in _pathObj) {
+                    if (_pathObj.hasOwnProperty(key)) {
+                        const element = _pathObj[key];
+                        if (!this.propsDic.has(key)) {
+                            var go = Laya.loader.getRes(element) as Sprite3D;
+                            this.propsDic.set(key, go);
+                        }
+                    }
+                }
+                if (callback) {
+                    callback(true);
+                }
+            });
+        } else {
+            if (callback) callback(true);
+        }
+    }
+
 }

+ 48 - 0
color3D_laya/src/script/GameLogic/ParticleMgr.ts

@@ -0,0 +1,48 @@
+import Dictionary from "../Util/Dictionary";
+import Sprite3D = Laya.Sprite3D;
+import { PlayerController } from "./PlayerController";
+import GameDefined from "./GameDefined";
+import ResourceLoad from "./ResourceLoad";
+import Vector3=Laya.Vector3;
+export class ParticleMgr {
+    private static instance: ParticleMgr;
+    public static get Instance(): ParticleMgr {
+        return ParticleMgr.instance || (ParticleMgr.instance = new ParticleMgr());
+    }
+    constructor() {
+        this.particleDic = new Dictionary();
+    }
+    private particleDic: Dictionary;
+
+    public tail: Sprite3D;
+    public tailid=0;
+    public CreateTail(_id: number) {
+        if(this.tailid==_id)return;
+        if(this.tail){
+            this.tail.active=false;
+            this.tail.removeSelf();
+        }
+        if(this.particleDic.has(_id)){
+            var tail=this.particleDic.get(_id);
+            if(PlayerController.Instance.player){
+                PlayerController.Instance.player.getChildAt(0). addChild(tail);
+                tail.active=true;
+                this.tail=tail;
+                this.tailid=_id;
+            }
+        }else{
+            var path=GameDefined.particle_path+_id+".lh";
+            ResourceLoad.LoadResource([path],()=>{
+                var go=Laya.loader.getRes(path)as Sprite3D;
+                this.particleDic.set(_id,go);
+                if(PlayerController.Instance.player){
+                    PlayerController.Instance.player.getChildAt(0).addChild(go);
+                    go.active=true;
+                    go.transform.localScale=new Vector3(5,5,5);
+                    this.tail=go;
+                    this.tailid=_id;
+                }
+            });
+        }
+    }
+}

+ 43 - 10
color3D_laya/src/script/GameLogic/PlayerController.ts

@@ -4,38 +4,71 @@ import PlayerBehaviour from "../Behaviour/PlayerBehaviour";
 import { Player } from "./player";
 import { SceneController } from "./SceneController";
 import Vector3 = Laya.Vector3;
-import GameDefined from "./GameDefined";
+import GameDefined, { ColorType } from "./GameDefined";
+import Dictionary from "../Util/Dictionary";
+import ResourceLoad from "./ResourceLoad";
 export class PlayerController {
     private static instance: PlayerController;
     public static get Instance(): PlayerController {
         return PlayerController.instance || (PlayerController.instance = new PlayerController());
     }
+    constructor() {
+        //this.playersDic = new Dictionary();
+    }
 
     public player: Sprite3D;
     public playerBehave: Player;
-    public Init(_p: Sprite3D) {
+    public playerbroken: Sprite3D;
+    public playerColor: ColorType;;
+
+
+    public Init(_p: Sprite3D, pb: Sprite3D) {
         if (_p) {
             this.player = _p;
-            var _pb = this.player.getChildAt(0).getComponent(PlayerBehaviour);
-            if (!_pb) _pb = this.player.addComponent(PlayerBehaviour);
-            _pb.init();
-            this.playerBehave = this.player.getComponent(Player);
-            if (!this.playerBehave) this.playerBehave = this.player.addComponent(Player);
+            this.CreatePlayerbody();
+        }
+        if (pb) {
+            this.playerbroken = pb;
+            this.playerbroken.active = false;
         }
+        this.SetPlayerMat();
+        this.ResetPlayerPos();
     }
 
-    public StartSliderPlayer(_y: number, _x: number) {
+    CreatePlayerbody() {
+        var _pb = this.player.getChildAt(0).getComponent(PlayerBehaviour);
+        if (!_pb) _pb = this.player.addComponent(PlayerBehaviour);
+        _pb.init();
+        this.playerBehave = this.player.getComponent(Player);
+        if (!this.playerBehave) this.playerBehave = this.player.addComponent(Player);
+    }
+    SetPlayerMat() {
+        if (this.playerBehave) {
 
+            this.playerBehave.SetMat(ColorType.yellow);
+            this.playerColor = ColorType.yellow;
+        }
+    }
+
+    ResetPlayerPos() {
+        if (this.player) {
+            this.player.transform.position = SceneController.Instance.start_node.transform.position;
+        }
+    }
+
+    //移动玩家
+    public StartSliderPlayer(_y: number, _x: number) {
         this.playerBehave.SetSpeed(_y * 0.01, _x * 0.01);
         this.JundgePByCDis();
     }
 
+    //控制玩家和相机的距离
     private tempPos = new Vector3(0, 0.5, 0);
     public JundgePByCDis() {
         var camera = SceneController.Instance._camera;
-        this.tempPos.z=this.player.transform.position.z;
+        this.tempPos.z = this.player.transform.position.z;
         var dis = Vector3.distance(this.tempPos, camera.transform.position);
-        if(dis<=GameDefined.minDis||dis>=GameDefined.maxDis){
+        if (dis <= GameDefined.minDis || dis >= GameDefined.maxDis) {
             this.StopSliderPlayer();
         }
     }

+ 1 - 7
color3D_laya/src/script/GameLogic/PoolManager.ts

@@ -24,7 +24,7 @@ export class PoolManager {
                 this.prefabDic.set(name, prefab);
         }
     }
-    public SetActiveObject(name: string, scale?) {
+    public SetActiveObject(name: string) {
         if (this.poolDic.has(name)) {
             if (this.poolDic.get(name).length > 0) {
                 var result = this.poolDic.get(name).shift();
@@ -33,9 +33,6 @@ export class PoolManager {
             } else {
                 if (this.prefabDic.has(name)) {
                     var curObj = Laya.Sprite3D.instantiate(this.prefabDic.get(name)) as Laya.Sprite3D;
-                    if (scale != null) {
-                        curObj.transform.localScale = new Vector3(scale, scale, scale);
-                    }
                     curObj.name = name;
                     return curObj;
                 } else {
@@ -45,9 +42,6 @@ export class PoolManager {
         } else {
             if (this.prefabDic.has(name)) {
                 var curObj = Laya.Sprite3D.instantiate(this.prefabDic.get(name)) as Laya.Sprite3D;
-                if (scale != null) {
-                    curObj.transform.localScale = new Vector3(scale, scale, scale);
-                }
                 curObj.name = name;
                 return curObj;
             } else {

+ 35 - 0
color3D_laya/src/script/GameLogic/ResourceLoad.ts

@@ -0,0 +1,35 @@
+import { Main } from "../../Main";
+import { AppSetting } from "./GameDefined";
+
+export default class ResourceLoad {
+
+    public static LoadResource(path: Array<any>, complet?: Function) {
+        Laya.loader.retryNum = 2;
+        Laya.loader.maxLoader = 3;
+        Laya.loader.retryDelay = 100;
+        Laya.loader.create(path, new Laya.Handler(this, complet));
+        Laya.loader.on(Laya.Event.ERROR, this, (data) => {
+            console.log(data + " 资源加载失败");
+        });
+    }
+
+    private static baseUrl = "https://cdn2.xwxgame.com/colorbump3d/";
+    public static InitNativefiles(callback: Function) {
+        let nativefilesUrl = "res/config/nativefiles.txt";
+        if (Main.isWx) {
+            Laya.URL.basePath = this.baseUrl + AppSetting.cdnpath + "/";
+            Laya.MiniAdpter.nativefiles.push(nativefilesUrl);
+            ResourceLoad.LoadResource([nativefilesUrl], () => {
+                let str = Laya.Loader.getRes(nativefilesUrl);
+                let json = JSON.parse(str);
+                for (let i = 0; i < json.length; i++) {
+                    let url = json[i];
+                    Laya.MiniAdpter.nativefiles.push(url);
+                }
+                if (callback) callback();
+            });
+        } else {
+            if (callback) callback();
+        }
+    }
+}

+ 61 - 11
color3D_laya/src/script/GameLogic/SceneController.ts

@@ -4,6 +4,10 @@ import { PlayerController } from "./PlayerController";
 import { ObsController } from "./ObsController";
 import StandBehaviour from "../Behaviour/StandBehaviour";
 import CameraBehavior from "./CameraBehavior";
+import { ParticleMgr } from "./ParticleMgr";
+import GameDefined, { ColorType } from "./GameDefined";
+import MeshSprite3D = Laya.MeshSprite3D;
+import BlinnPhongMaterial = Laya.BlinnPhongMaterial;
 export class SceneController {
     private static instance: SceneController;
     public static get Instance(): SceneController {
@@ -11,11 +15,24 @@ export class SceneController {
     }
 
 
-    private floor: Sprite3D;
+    private floor: MeshSprite3D;
     public _camera: Laya.Camera;
-     
+
+    public road_node: Sprite3D;
+    public start_node: Sprite3D;
+    public mainScene: Scene3D;
+
+    private temppath = [
+        "prop1",
+        "prop2",
+        "prop3",
+        "prop4",
+        "prop5"
+    ];
+
     public Init(_s: Scene3D) {
         if (_s) {
+            this.mainScene = _s;
             Laya.stage.addChild(_s);
         }
         else {
@@ -23,23 +40,56 @@ export class SceneController {
             return;
         }
         var road = _s.getChildByName("road");
-        var obs = road.getChildByName("road")._children;
-        this.floor = road.getChildByName("floor").getChildAt(0) as Sprite3D;
-        var player = _s.getChildByName("player") as Sprite3D;
+        this.road_node = road.getChildByName("road") as Sprite3D;
+        this.floor = road.getChildByName("floor").getChildAt(0) as MeshSprite3D;
         this._camera = _s.getChildByName("Main Camera") as Laya.Camera;
-      
+        this.start_node = road.getChildByName("start") as Sprite3D;
+
+        var player = _s.getChildByName("player") as Sprite3D;
+        var playerbroken = _s.getChildByName("player_broken") as Sprite3D;
 
-        PlayerController.Instance.Init(player);
-        ObsController.Instance.Init(obs);
         this.InitScene();
-        this._camera.addComponent(CameraBehavior);
+        PlayerController.Instance.Init(player, playerbroken);
+
+        ObsController.Instance.LoadProps(this.temppath, () => {
+            // for (let index = 0; index < this.temppath.length; index++) {
+            //     const element = this.temppath[index];
+            //     ObsController.Instance.CreateProp(element);
+            // }
+            ObsController.Instance.CreateByOrder(true);
+        });
+        ParticleMgr.Instance.CreateTail(5);
+        this.SetFloorMat(this.floor, ColorType.red);
+        //      PlayerController.Instance.Init(player);
+        //      ObsController.Instance.Init(obs);
+
     }
 
     public InitScene() {
+        var _cams = this._camera.getComponent(CameraBehavior);
+        if (!_cams) this._camera.addComponent(CameraBehavior);
         if (this.floor) {
-            var floor = this.floor.getComponent(StandBehaviour);
-            if (!floor) floor = this.floor.addComponent(StandBehaviour);
+            var floor = this.floor.getComponent(StandBehaviour) as StandBehaviour;
+            if (!floor) floor = this.floor.addComponent(StandBehaviour) as StandBehaviour;
             floor.init();
         }
     }
+
+    public SetFloorMat(_o: MeshSprite3D, colortype: ColorType) {
+        var mesh = _o.meshRenderer;
+        if (mesh) {
+            var mat = mesh.material as BlinnPhongMaterial;
+            var color = GameDefined.ColorValue[colortype];
+            mat.albedoColorA = color[0];
+            mat.albedoColorB = color[1];
+            mat.albedoColorG = color[2];
+            mat.albedoColorR = color[3];
+        }
+        if (_o._children.length > 0) {
+            for (let index = 0; index < _o._children.length; index++) {
+                const element = _o._children[index];
+                this.SetFloorMat(element, colortype);
+            }
+        }
+    }
 }

+ 48 - 3
color3D_laya/src/script/GameLogic/player.ts

@@ -1,21 +1,25 @@
 import Sprite3D = Laya.Sprite3D;
 import Transform3D = Laya.Transform3D;
-import GameDefined from "./GameDefined";
+import GameDefined, { ColorType } from "./GameDefined";
 import { GameController } from "./GameController";
 import Vector3 = Laya.Vector3;
+import { ObsController } from "./ObsController";
 export class Player extends Laya.Script3D {
 
     constructor() {
         super();
     }
 
-    private self: Sprite3D;
+    private self: Laya.MeshSprite3D;
     private _tran: Transform3D;
     public _speed = Vector3._ZERO.clone();
+
+    private arriveId = 0;
     onAwake() {
-        this.self = this.owner as Sprite3D;
+        this.self = this.owner as Laya.MeshSprite3D;
         this._tran = this.self.transform;
         this.SetSpeed();
+        this.arriveId = 0;
     }
 
 
@@ -26,6 +30,26 @@ export class Player extends Laya.Script3D {
             if (this._tran.localPositionX >= 5) this._tran.localPositionX = 5;
             if (this._tran.localPositionX <= -5) this._tran.localPositionX = -5;
         }
+        this.ArriveObs();
+    }
+
+    private dis: number;
+    ArriveObs() {
+        if (!this.dis) {
+            this.arriveId++;
+            if (this.arriveId == ObsController.Instance.temppath.length) return;
+            var element = ObsController.Instance.temppath[this.arriveId];
+            for (const key in element) {
+                if (element.hasOwnProperty(key)) {
+                    this.dis = element[key];
+                }
+            }
+        }
+        if (this._tran.position.z >= this.dis) {
+            this.dis = null;
+            ObsController.Instance.CreateByOrder();
+        }
+
     }
     SetSpeed(_Y?, _X?) {
         if (!_Y) {
@@ -41,5 +65,26 @@ export class Player extends Laya.Script3D {
             this._speed.x = _X;
         }
     }
+    SetMat(colortype: ColorType, obj?: Laya.MeshSprite3D) {
+        var o = obj ? obj : this.self;
+        var mesh = o.meshRenderer;
+        if (mesh) {
+            var mat = mesh.material as Laya.BlinnPhongMaterial;
+            var color = GameDefined.ColorValue[colortype];
+            mat.albedoColorA = color[3];
+            mat.albedoColorB = color[2];
+            mat.albedoColorG = color[1];
+            mat.albedoColorR = color[0];
+        }
+        if (o._children.length > 0) {
+            for (let index = 0; index < o._children.length; index++) {
+                const element = o._children[index];
+                this.SetMat(colortype, element);
+            }
+        }
+    }
+    Restart() {
+        this.arriveId = 0;
+    }
 
 }

+ 3 - 1
color3D_laya/src/script/Gameui/game_ui.ts

@@ -4,6 +4,7 @@ import Transform3D = Laya.Transform3D;
 import { PlayerController } from "../GameLogic/PlayerController";
 import Vector3 = Laya.Vector3;
 import { GameController } from "../GameLogic/GameController";
+import { ObsController } from "../GameLogic/ObsController";
 
 
 export class game_ui extends ui.game_uiUI implements UI_Interface {
@@ -29,7 +30,7 @@ export class game_ui extends ui.game_uiUI implements UI_Interface {
         this.on(Laya.Event.MOUSE_UP, this, this.OnClickUp);
         this.on(Laya.Event.MOUSE_OUT, this, this.OnClickUp);
         this.startBtn.clickHandler = new Laya.Handler(this, () => {
-            GameController.Instance.gamestart = true;
+            GameController.Instance.StartGame();
             this.startBtn.visible = false;
         });
     }
@@ -52,6 +53,7 @@ export class game_ui extends ui.game_uiUI implements UI_Interface {
     private lerpPos = Vector3._ZERO.clone();
     private clickD = false;
     OnClickDown(e: Laya.Event) {
+        //ObsController.Instance.ClearObsList();
         if (!GameController.Instance.gamestart) return;
         this.clickD = true;;
 

+ 10 - 3
color3D_laya/src/script/Oimo/OimoRigibody.ts

@@ -1,6 +1,8 @@
 import OimoBodyData from "./OimoBodyData";
 import OimoHelper from "./OimoHelper";
 import { DealPackaging } from "../GameLogic/DealPackaging";
+import { ColorType } from "../GameLogic/GameDefined";
+import { PlayerController } from "../GameLogic/PlayerController";
 
 export default class OimoRigidBody extends Laya.Script3D {
 
@@ -8,6 +10,8 @@ export default class OimoRigidBody extends Laya.Script3D {
         super();
     }
 
+    public color:ColorType;
+
     public transform: Laya.Transform3D;
     public body: OIMO.RigidBody;
     public bodyData: OimoBodyData;
@@ -50,8 +54,11 @@ export default class OimoRigidBody extends Laya.Script3D {
     public checkContact(name) {
         if (this.body && this.body.contactLink) {
             let otherBody = this.body.contactLink.body;
-
-            if (otherBody.name == name) return true;
+            if (otherBody.name == name&&this.color!=PlayerController.Instance.playerColor){
+               // console.log(PlayerController.Instance.playerColor);
+               // console.log("game over");
+                return true;
+            } 
         }
 
         return false;
@@ -83,7 +90,7 @@ export default class OimoRigidBody extends Laya.Script3D {
             // h = this.transform.localScale.y * 2;
             // d = this.transform.localScale.z;
             w = _scale.x*0.5;
-            h = _scale.y * 2;
+            h = _scale.y *2;
             d = _scale.z*0.5;
             size = [w, h, d];
         } else if (this.bodyData.type == "sphere") {

BIN
color3D_unity/color3D/.vs/color3D/v16/.suo


BIN
color3D_unity/color3D/.vs/color3D/v16/Server/sqlite3/storage.ide


+ 1 - 1
color3D_unity/color3D/Assets/Editor/Editor_Tool.cs

@@ -95,7 +95,7 @@ public class Editor_Tool : EditorWindow
             foreach (Renderer it in obj[i].GetComponentsInChildren<Renderer>())
             {
 
-                it.transform.parent.name = "obs__" + type;
+            //    it.transform.parent.name = "obs__" + type;
                 Material mat = AssetDatabase.LoadAssetAtPath<Material>(path);
                 Material[] bufMat = new Material[it.sharedMaterials.Length];
                 for (int j = 0; j < it.sharedMaterials.Length; j++)

+ 9 - 0
color3D_unity/color3D/Assets/FX.meta

@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 252adaa99d15984408963c85159a2eef
+folderAsset: yes
+timeCreated: 1565267833
+licenseType: Pro
+DefaultImporter:
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 9 - 0
color3D_unity/color3D/Assets/FX/Materials.meta

@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 408496ec9a4320e4aad067ef531f1156
+folderAsset: yes
+timeCreated: 1565267833
+licenseType: Pro
+DefaultImporter:
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 38 - 0
color3D_unity/color3D/Assets/FX/Materials/007_b.mat

@@ -0,0 +1,38 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_PrefabParentObject: {fileID: 0}
+  m_PrefabInternal: {fileID: 0}
+  m_Name: 007_b
+  m_Shader: {fileID: 4800000, guid: 8d55acca7fbab644faad34f6a415f30a, type: 3}
+  m_ShaderKeywords: ADDTIVEFOG _ALPHABLEND_ON
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: 3000
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _MainTex:
+        m_Texture: {fileID: 2800000, guid: bcf218451fb202c49a67b0d906c1cce0, type: 3}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    m_Floats:
+    - _Cull: 0
+    - _Cutoff: 0.01
+    - _DstBlend: 1
+    - _InvFade: 1
+    - _Mode: 0
+    - _RenderQueue: 2
+    - _SrcBlend: 5
+    - _ZTest: 4
+    - _ZWrite: 0
+    m_Colors:
+    - _Color: {r: 1, g: 1, b: 1, a: 1}
+    - _EmisColor: {r: 0.2, g: 0.2, b: 0.2, a: 0}
+    - _TintColor: {r: 0.36078432, g: 0.36078432, b: 0.36078432, a: 0.5019608}

+ 7 - 0
color3D_unity/color3D/Assets/FX/Materials/007_b.mat.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: b1d6ed45677092440892bf2bcfe7cdbd
+NativeFormatImporter:
+  mainObjectFileID: -1
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 37 - 0
color3D_unity/color3D/Assets/FX/Materials/008a.mat

@@ -0,0 +1,37 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_PrefabParentObject: {fileID: 0}
+  m_PrefabInternal: {fileID: 0}
+  m_Name: 008a
+  m_Shader: {fileID: 4800000, guid: 8d55acca7fbab644faad34f6a415f30a, type: 3}
+  m_ShaderKeywords: ADDTIVEFOG _ALPHABLEND_ON
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: 3000
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _MainTex:
+        m_Texture: {fileID: 2800000, guid: 2d496a04c2df94040bad8e4609aa8f33, type: 3}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    m_Floats:
+    - _Cull: 0
+    - _Cutoff: 0.01
+    - _DstBlend: 1
+    - _InvFade: 1
+    - _Mode: 0
+    - _RenderQueue: 2
+    - _SrcBlend: 5
+    - _ZTest: 4
+    - _ZWrite: 0
+    m_Colors:
+    - _Color: {r: 1, g: 1, b: 1, a: 1}
+    - _TintColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5}

+ 7 - 0
color3D_unity/color3D/Assets/FX/Materials/008a.mat.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 843bedba5adbd0746a13b7ebfa9b30f1
+NativeFormatImporter:
+  mainObjectFileID: -1
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 92 - 0
color3D_unity/color3D/Assets/FX/Materials/d_lizi.mat

@@ -0,0 +1,92 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_PrefabParentObject: {fileID: 0}
+  m_PrefabInternal: {fileID: 0}
+  m_Name: d_lizi
+  m_Shader: {fileID: 4800000, guid: 8d55acca7fbab644faad34f6a415f30a, type: 3}
+  m_ShaderKeywords: ADDTIVEFOG _ALPHABLEND_OFF _ALPHABLEND_ON _ALPHATEST_OFF _EMISSION_OFF
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: 3000
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _BumpMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _DetailAlbedoMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _DetailMask:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _DetailNormalMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _EmissionMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _MainTex:
+        m_Texture: {fileID: 2800000, guid: 21a0057da3a513443b49e00fda0310f2, type: 3}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _MetallicGlossMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _OcclusionMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _ParallaxMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _SpecGlossMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    m_Floats:
+    - _AlbedoIntensity: 1
+    - _AlphaBlend: 1
+    - _AlphaTest: 0
+    - _BumpScale: 1
+    - _Cull: 0
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 1
+    - _Emission: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0.5
+    - _GlossyReflections: 1
+    - _Lighting: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _RenderQueue: 2
+    - _Shininess: 0.078125
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SpecularSource: 0
+    - _SrcBlend: 5
+    - _UVSec: 0
+    - _ZTest: 4
+    - _ZWrite: 0
+    m_Colors:
+    - _Color: {r: 1, g: 1, b: 1, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
+    - _SpecColor: {r: 1, g: 1, b: 1, a: 1}
+    - _TintColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5}

+ 9 - 0
color3D_unity/color3D/Assets/FX/Materials/d_lizi.mat.meta

@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 977c695f85b257c4bb8e744051b87d0c
+timeCreated: 1546092665
+licenseType: Free
+NativeFormatImporter:
+  mainObjectFileID: 2100000
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 37 - 0
color3D_unity/color3D/Assets/FX/Materials/guang_2a.mat

@@ -0,0 +1,37 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_PrefabParentObject: {fileID: 0}
+  m_PrefabInternal: {fileID: 0}
+  m_Name: guang_2a
+  m_Shader: {fileID: 4800000, guid: 8d55acca7fbab644faad34f6a415f30a, type: 3}
+  m_ShaderKeywords: ADDTIVEFOG _ALPHABLEND_ON
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: 3000
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _MainTex:
+        m_Texture: {fileID: 2800000, guid: 1bfdf79f8999b784ba6a9eef9b1a9a23, type: 3}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    m_Floats:
+    - _Cull: 0
+    - _Cutoff: 0.01
+    - _DstBlend: 1
+    - _InvFade: 1
+    - _Mode: 0
+    - _RenderQueue: 2
+    - _SrcBlend: 5
+    - _ZTest: 4
+    - _ZWrite: 0
+    m_Colors:
+    - _Color: {r: 1, g: 1, b: 1, a: 1}
+    - _TintColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5}

+ 7 - 0
color3D_unity/color3D/Assets/FX/Materials/guang_2a.mat.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 77eca8247b04acf4ba739f737db56f20
+NativeFormatImporter:
+  mainObjectFileID: -1
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 37 - 0
color3D_unity/color3D/Assets/FX/Materials/guang_3.mat

@@ -0,0 +1,37 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_PrefabParentObject: {fileID: 0}
+  m_PrefabInternal: {fileID: 0}
+  m_Name: guang_3
+  m_Shader: {fileID: 4800000, guid: 8d55acca7fbab644faad34f6a415f30a, type: 3}
+  m_ShaderKeywords: ADDTIVEFOG _ALPHABLEND_ON
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: 3000
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _MainTex:
+        m_Texture: {fileID: 2800000, guid: c3fcf89fb2ad67b4cbfbebbe0e2edd3d, type: 3}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    m_Floats:
+    - _Cull: 0
+    - _Cutoff: 0.01
+    - _DstBlend: 1
+    - _InvFade: 1
+    - _Mode: 0
+    - _RenderQueue: 2
+    - _SrcBlend: 5
+    - _ZTest: 4
+    - _ZWrite: 0
+    m_Colors:
+    - _Color: {r: 1, g: 1, b: 1, a: 1}
+    - _TintColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5}

+ 7 - 0
color3D_unity/color3D/Assets/FX/Materials/guang_3.mat.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 0438adcdefc12d349a285d0ec6295fc2
+NativeFormatImporter:
+  mainObjectFileID: -1
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 92 - 0
color3D_unity/color3D/Assets/FX/Materials/huo_a.mat

@@ -0,0 +1,92 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_PrefabParentObject: {fileID: 0}
+  m_PrefabInternal: {fileID: 0}
+  m_Name: huo_a
+  m_Shader: {fileID: 4800000, guid: 8d55acca7fbab644faad34f6a415f30a, type: 3}
+  m_ShaderKeywords: ADDTIVEFOG _ALPHABLEND_OFF _ALPHABLEND_ON _ALPHATEST_OFF _EMISSION_OFF
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: 3000
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _BumpMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _DetailAlbedoMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _DetailMask:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _DetailNormalMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _EmissionMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _MainTex:
+        m_Texture: {fileID: 2800000, guid: 4843bd97f4a4f4d4f81b502af6cf1ddc, type: 3}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _MetallicGlossMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _OcclusionMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _ParallaxMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _SpecGlossMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    m_Floats:
+    - _AlbedoIntensity: 1
+    - _AlphaBlend: 1
+    - _AlphaTest: 0
+    - _BumpScale: 1
+    - _Cull: 0
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 1
+    - _Emission: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0.5
+    - _GlossyReflections: 1
+    - _Lighting: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _RenderQueue: 2
+    - _Shininess: 0.078125
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SpecularSource: 0
+    - _SrcBlend: 5
+    - _UVSec: 0
+    - _ZTest: 4
+    - _ZWrite: 0
+    m_Colors:
+    - _Color: {r: 1, g: 1, b: 1, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
+    - _SpecColor: {r: 1, g: 1, b: 1, a: 1}
+    - _TintColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5}

+ 9 - 0
color3D_unity/color3D/Assets/FX/Materials/huo_a.mat.meta

@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 071f581d3a5b2a74b8538b09c7423e9a
+timeCreated: 1546092665
+licenseType: Free
+NativeFormatImporter:
+  mainObjectFileID: 2100000
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 92 - 0
color3D_unity/color3D/Assets/FX/Materials/lizi_zi.mat

@@ -0,0 +1,92 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_PrefabParentObject: {fileID: 0}
+  m_PrefabInternal: {fileID: 0}
+  m_Name: lizi_zi
+  m_Shader: {fileID: 4800000, guid: 8d55acca7fbab644faad34f6a415f30a, type: 3}
+  m_ShaderKeywords: ADDTIVEFOG _ALPHABLEND_OFF _ALPHABLEND_ON _ALPHATEST_OFF _EMISSION_OFF
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: 3000
+  stringTagMap: {}
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _BumpMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _DetailAlbedoMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _DetailMask:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _DetailNormalMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _EmissionMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _MainTex:
+        m_Texture: {fileID: 2800000, guid: 42c782ddaa414314ea2da5d8d88a3142, type: 3}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _MetallicGlossMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _OcclusionMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _ParallaxMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _SpecGlossMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    m_Floats:
+    - _AlbedoIntensity: 1
+    - _AlphaBlend: 1
+    - _AlphaTest: 0
+    - _BumpScale: 1
+    - _Cull: 0
+    - _Cutoff: 0.5
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 1
+    - _Emission: 0
+    - _GlossMapScale: 1
+    - _Glossiness: 0.5
+    - _GlossyReflections: 1
+    - _Lighting: 1
+    - _Metallic: 0
+    - _Mode: 0
+    - _OcclusionStrength: 1
+    - _Parallax: 0.02
+    - _RenderQueue: 2
+    - _Shininess: 0.078125
+    - _SmoothnessTextureChannel: 0
+    - _SpecularHighlights: 1
+    - _SpecularSource: 0
+    - _SrcBlend: 5
+    - _UVSec: 0
+    - _ZTest: 4
+    - _ZWrite: 0
+    m_Colors:
+    - _Color: {r: 1, g: 1, b: 1, a: 1}
+    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
+    - _SpecColor: {r: 1, g: 1, b: 1, a: 1}
+    - _TintColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5}

+ 9 - 0
color3D_unity/color3D/Assets/FX/Materials/lizi_zi.mat.meta

@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 22100a0ee4159fc498b2db04295fb3f0
+timeCreated: 1546092665
+licenseType: Free
+NativeFormatImporter:
+  mainObjectFileID: 2100000
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 0 - 0
color3D_unity/color3D/Assets/FX/Materials/masaike.mat


Деякі файли не було показано, через те що забагато файлів було змінено