editor.form 11 KB

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