editor.form 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562
  1. form particleEditor
  2. {
  3. ${leftWidth} = 195
  4. size = 95%, 100%
  5. consumeInputEvents = false
  6. style = Empty
  7. container leftSide
  8. {
  9. layout = LAYOUT_VERTICAL
  10. width = ${leftWidth}
  11. container saveLoad
  12. {
  13. style = Form
  14. width = 100%
  15. layout = LAYOUT_VERTICAL
  16. button save
  17. {
  18. width = 100%
  19. text = Save
  20. }
  21. button load : save
  22. {
  23. text = Load
  24. }
  25. }
  26. // Image settings
  27. container image
  28. {
  29. style = Form
  30. width = 100%
  31. layout
  32. {
  33. type = LAYOUT_VERTICAL
  34. spacing = 5
  35. }
  36. label
  37. {
  38. text = Image
  39. fontSize = 18
  40. }
  41. image sprite
  42. {
  43. path = res/fire.png
  44. size = 120, 120
  45. }
  46. container imageSettings
  47. {
  48. width = 100%
  49. layout = LAYOUT_VERTICAL
  50. radioButton additive
  51. {
  52. text = Additive
  53. group = blendMode
  54. height = 25
  55. selected = true
  56. }
  57. radioButton transparent : additive
  58. {
  59. text = Transparent
  60. selected = false
  61. }
  62. radioButton multiply : transparent
  63. {
  64. text = Multiply
  65. selected = false
  66. }
  67. radioButton opaque : transparent
  68. {
  69. text = Opaque
  70. selected = false
  71. }
  72. container
  73. {
  74. width = 100%
  75. label
  76. {
  77. text = Frame Count:
  78. alignment = ALIGN_VCENTER_LEFT
  79. }
  80. textBox frameCount
  81. {
  82. text = 1
  83. size = 60, 32
  84. position = 110, 0
  85. }
  86. }
  87. container
  88. {
  89. width = 100%
  90. label
  91. {
  92. text = Frame Width:
  93. alignment = ALIGN_VCENTER_LEFT
  94. }
  95. textBox frameWidth
  96. {
  97. text = 1
  98. size = 60, 32
  99. position = 110, 0
  100. }
  101. }
  102. container
  103. {
  104. width = 100%
  105. label
  106. {
  107. text = Frame Height:
  108. alignment = ALIGN_VCENTER_LEFT
  109. }
  110. textBox frameHeight
  111. {
  112. text = 1
  113. size = 60, 32
  114. position = 110, 0
  115. }
  116. }
  117. button updateFrames
  118. {
  119. width = 100%
  120. text = Update
  121. }
  122. }
  123. }
  124. // Emission settings
  125. container emission
  126. {
  127. style = Form
  128. layout = LAYOUT_VERTICAL
  129. width = ${leftWidth}
  130. // Burst emission
  131. button emit
  132. {
  133. width = 100%
  134. text = Emit
  135. }
  136. label spacer
  137. {
  138. size = 5,5
  139. }
  140. // Emission rate
  141. slider emissionRate
  142. {
  143. width = 100%
  144. orientation = HORIZONTAL
  145. min = 1
  146. max = 500
  147. value = 100
  148. step = 1
  149. text = Emission Rate
  150. textAlignment = ALIGN_TOP_HCENTER
  151. valueTextVisible = true
  152. valueTextAlignment = ALIGN_BOTTOM_HCENTER
  153. valueTextPrecision = 2
  154. }
  155. slider burstSize : emissionRate
  156. {
  157. text = Burst Size
  158. value = 20
  159. max = 50
  160. step = 1
  161. }
  162. // Start / Stop Emitter
  163. checkBox started
  164. {
  165. text = Running
  166. checked = true
  167. }
  168. }
  169. button reset
  170. {
  171. width = ${leftWidth}
  172. text = Reset
  173. }
  174. }
  175. container particleProperties
  176. {
  177. style = Form
  178. alignment = ALIGN_TOP_RIGHT
  179. y = 50
  180. size = 210, 100%
  181. layout = LAYOUT_VERTICAL
  182. scroll = SCROLL_VERTICAL
  183. scrollBarsAutoHide = false
  184. // Particle Size
  185. label titleSize
  186. {
  187. padding
  188. {
  189. bottom = 5
  190. }
  191. text = Particle Size
  192. fontSize = 18
  193. }
  194. slider startMin
  195. {
  196. width = 100%
  197. orientation = HORIZONTAL
  198. min = 0
  199. max = 10
  200. value = 1
  201. step = 0.1
  202. text = Min Begin
  203. textAlignment = ALIGN_TOP_HCENTER
  204. valueTextVisible = true
  205. valueTextAlignment = ALIGN_BOTTOM_HCENTER
  206. valueTextPrecision = 2
  207. }
  208. slider startMax : startMin
  209. {
  210. text = Max Begin
  211. }
  212. slider endMin : startMin
  213. {
  214. text = Min End
  215. }
  216. slider endMax : startMin
  217. {
  218. text = Max End
  219. }
  220. // Energy
  221. label titleEnergy : titleSize
  222. {
  223. text = Energy
  224. }
  225. slider energyMin
  226. {
  227. width = 100%
  228. orientation = HORIZONTAL
  229. min = 0
  230. max = 5000
  231. step = 1
  232. text = Min
  233. textAlignment = ALIGN_TOP_HCENTER
  234. valueTextVisible = true
  235. valueTextAlignment = ALIGN_BOTTOM_HCENTER
  236. valueTextPrecision = 2
  237. }
  238. slider energyMax : energyMin
  239. {
  240. text = Max
  241. }
  242. // Start color
  243. label titleStartColor : titleSize
  244. {
  245. text = Start Color
  246. }
  247. slider startRed
  248. {
  249. width = 100%
  250. orientation = HORIZONTAL
  251. min = 0
  252. max = 1
  253. text = Red
  254. textAlignment = ALIGN_TOP_HCENTER
  255. valueTextVisible = true
  256. valueTextAlignment = ALIGN_BOTTOM_HCENTER
  257. valueTextPrecision = 2
  258. }
  259. slider startGreen : startRed
  260. {
  261. text = Green
  262. }
  263. slider startBlue : startRed
  264. {
  265. text = Blue
  266. }
  267. slider startAlpha : startRed
  268. {
  269. text = Alpha
  270. }
  271. // End color
  272. label titleEndColor : titleSize
  273. {
  274. text = End Color
  275. }
  276. slider endRed : startRed
  277. {
  278. }
  279. slider endGreen : startGreen
  280. {
  281. }
  282. slider endBlue : startBlue
  283. {
  284. }
  285. slider endAlpha : startAlpha
  286. {
  287. }
  288. // Position
  289. label titlePosition : titleSize
  290. {
  291. text = Position
  292. }
  293. slider posX : startRed
  294. {
  295. min = -2
  296. max = 2
  297. step = 0.1
  298. text = X
  299. }
  300. slider posY : posX
  301. {
  302. text = Y
  303. }
  304. slider posZ : posX
  305. {
  306. text = Z
  307. }
  308. // Position variance
  309. label titlePositionVar : titleSize
  310. {
  311. text = Position Var.
  312. }
  313. slider posVarX : startRed
  314. {
  315. min = 0
  316. max = 10
  317. text = X
  318. }
  319. slider posVarY : posVarX
  320. {
  321. text = Y
  322. }
  323. slider posVarZ : posVarX
  324. {
  325. text = Z
  326. }
  327. // Initial velocity
  328. label titleVelocity : titleSize
  329. {
  330. text = Velocity
  331. }
  332. slider velocityX : posVarX
  333. {
  334. min = -10
  335. max = 10
  336. text = X
  337. }
  338. slider velocityY : velocityX
  339. {
  340. text = Y
  341. }
  342. slider velocityZ : velocityX
  343. {
  344. text = Z
  345. }
  346. // Velocity variance
  347. label titleVelocityVar : titleSize
  348. {
  349. text = Velocity Var.
  350. }
  351. slider velocityVarX : posVarX
  352. {
  353. }
  354. slider velocityVarY : posVarY
  355. {
  356. }
  357. slider velocityVarZ : posVarZ
  358. {
  359. }
  360. // Acceleration
  361. label titleAcceleration : titleSize
  362. {
  363. text = Accel.
  364. }
  365. slider accelX : velocityX
  366. {
  367. text = X
  368. }
  369. slider accelY : accelX
  370. {
  371. text = Y
  372. }
  373. slider accelZ : accelX
  374. {
  375. text = Z
  376. }
  377. // Acceleration variance
  378. label titleAccelerationVar : titleSize
  379. {
  380. text = Accel. Var.
  381. }
  382. slider accelVarX : posVarX
  383. {
  384. text = X
  385. }
  386. slider accelVarY : posVarX
  387. {
  388. text = Y
  389. }
  390. slider accelVarZ : posVarX
  391. {
  392. text = Z
  393. }
  394. // Local rotation speed
  395. label titleSpinSpeed : titleSize
  396. {
  397. text = Spin Speed
  398. }
  399. slider spinSpeedMin : velocityX
  400. {
  401. text = Min
  402. }
  403. slider spinSpeedMax : spinSpeedMin
  404. {
  405. text = Max
  406. }
  407. // Rotation axis
  408. label titleRotationAxis : titleSize
  409. {
  410. text = Axis Rotation
  411. }
  412. slider axisX : startRed
  413. {
  414. text = X
  415. }
  416. slider axisY : axisX
  417. {
  418. text = Y
  419. }
  420. slider axisZ : axisX
  421. {
  422. text = Z
  423. }
  424. // Rotation axis variance
  425. label titleRotationAxisVar : titleSize
  426. {
  427. text = Axis Var.
  428. }
  429. slider axisVarX : axisX
  430. {
  431. text = X
  432. }
  433. slider axisVarY : axisVarX
  434. {
  435. text = Y
  436. }
  437. slider axisVarZ : axisVarX
  438. {
  439. text = Z
  440. }
  441. // Axis rotation speed
  442. label titleRotationSpeed : titleSize
  443. {
  444. text = Rotation Speed
  445. }
  446. slider rotationSpeedMin : velocityX
  447. {
  448. text = Min
  449. }
  450. slider rotationSpeedMax : rotationSpeedMin
  451. {
  452. text = Max
  453. }
  454. }
  455. // Camera Zoom
  456. container zoom
  457. {
  458. alignment = ALIGN_BOTTOM_HCENTER
  459. button zoomIn
  460. {
  461. width = 60
  462. text = +
  463. fontSize = 30
  464. }
  465. button zoomOut : zoomIn
  466. {
  467. x = 60
  468. text = -
  469. }
  470. }
  471. }