2
0

Unit1.dfm 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776
  1. object Form1: TForm1
  2. Left = 0
  3. Top = 0
  4. Caption = 'Cg Multi Texturing'
  5. ClientHeight = 414
  6. ClientWidth = 995
  7. Color = clBtnFace
  8. Font.Charset = DEFAULT_CHARSET
  9. Font.Color = clWindowText
  10. Font.Height = -11
  11. Font.Name = 'Tahoma'
  12. Font.Style = []
  13. OldCreateOrder = False
  14. OnCreate = FormCreate
  15. OnKeyPress = FormKeyPress
  16. OnMouseWheel = FormMouseWheel
  17. PixelsPerInch = 96
  18. TextHeight = 13
  19. object Splitter1: TSplitter
  20. Left = 313
  21. Top = 0
  22. Height = 414
  23. Color = clBtnShadow
  24. ParentColor = False
  25. ExplicitTop = -4
  26. ExplicitHeight = 395
  27. end
  28. object Panel1: TPanel
  29. Left = 0
  30. Top = 0
  31. Width = 313
  32. Height = 414
  33. Align = alLeft
  34. BevelInner = bvRaised
  35. BevelOuter = bvLowered
  36. TabOrder = 0
  37. object PageControl1: TPageControl
  38. Left = 2
  39. Top = 2
  40. Width = 309
  41. Height = 410
  42. ActivePage = TabSheet3
  43. Align = alClient
  44. Font.Charset = ANSI_CHARSET
  45. Font.Color = clWindowText
  46. Font.Height = -11
  47. Font.Name = 'Tahoma'
  48. Font.Style = []
  49. ParentFont = False
  50. TabOrder = 0
  51. object TabSheet1: TTabSheet
  52. Caption = 'Vertex Program'
  53. object Splitter3: TSplitter
  54. Left = 0
  55. Top = 289
  56. Width = 301
  57. Height = 3
  58. Cursor = crVSplit
  59. Align = alBottom
  60. Color = clBtnShadow
  61. ParentColor = False
  62. ExplicitTop = 276
  63. end
  64. object Panel2: TPanel
  65. Left = 0
  66. Top = 0
  67. Width = 301
  68. Height = 25
  69. Align = alTop
  70. BevelOuter = bvNone
  71. TabOrder = 0
  72. object LabelVertProfile: TLabel
  73. Left = 88
  74. Top = 5
  75. Width = 63
  76. Height = 13
  77. Caption = 'Using profile:'
  78. end
  79. object CBVertexProgram: TCheckBox
  80. Left = 6
  81. Top = 4
  82. Width = 59
  83. Height = 17
  84. Caption = 'Enabled'
  85. Checked = True
  86. Font.Charset = ANSI_CHARSET
  87. Font.Color = clWindowText
  88. Font.Height = -11
  89. Font.Name = 'Tahoma'
  90. Font.Style = []
  91. ParentFont = False
  92. State = cbChecked
  93. TabOrder = 0
  94. OnClick = CBVertexProgramClick
  95. end
  96. end
  97. object Panel11: TPanel
  98. Left = 0
  99. Top = 25
  100. Width = 301
  101. Height = 264
  102. Align = alClient
  103. Caption = 'Panel6'
  104. TabOrder = 1
  105. object Panel12: TPanel
  106. Left = 1
  107. Top = 1
  108. Width = 299
  109. Height = 16
  110. Align = alTop
  111. BevelOuter = bvNone
  112. Caption = 'Shader Code'
  113. Color = clBtnHighlight
  114. TabOrder = 0
  115. end
  116. object MemoVertCode: TMemo
  117. Left = 1
  118. Top = 17
  119. Width = 299
  120. Height = 221
  121. Align = alClient
  122. Font.Charset = ANSI_CHARSET
  123. Font.Color = clWindowText
  124. Font.Height = -11
  125. Font.Name = 'Lucida Console'
  126. Font.Style = []
  127. ParentFont = False
  128. ScrollBars = ssBoth
  129. TabOrder = 1
  130. WordWrap = False
  131. OnChange = MemoVertCodeChange
  132. end
  133. object Panel13: TPanel
  134. Left = 1
  135. Top = 238
  136. Width = 299
  137. Height = 25
  138. Align = alBottom
  139. BevelOuter = bvNone
  140. TabOrder = 2
  141. DesignSize = (
  142. 299
  143. 25)
  144. object ButtonApplyVP: TButton
  145. Left = 224
  146. Top = 2
  147. Width = 67
  148. Height = 20
  149. Anchors = [akTop, akRight]
  150. Caption = 'Apply'
  151. Enabled = False
  152. TabOrder = 0
  153. OnClick = ButtonApplyVPClick
  154. end
  155. end
  156. end
  157. object Panel5: TPanel
  158. Left = 0
  159. Top = 292
  160. Width = 301
  161. Height = 90
  162. Align = alBottom
  163. TabOrder = 2
  164. DesignSize = (
  165. 301
  166. 90)
  167. object Label2: TLabel
  168. Left = 228
  169. Top = 5
  170. Width = 30
  171. Height = 13
  172. Anchors = [akTop, akRight]
  173. Caption = 'Show:'
  174. end
  175. object Memo1: TMemo
  176. Left = 1
  177. Top = 1
  178. Width = 216
  179. Height = 88
  180. Align = alLeft
  181. Anchors = [akLeft, akTop, akRight, akBottom]
  182. Color = clBtnFace
  183. Font.Charset = ANSI_CHARSET
  184. Font.Color = clWindowText
  185. Font.Height = -9
  186. Font.Name = 'Lucida Console'
  187. Font.Style = []
  188. ParentFont = False
  189. ReadOnly = True
  190. ScrollBars = ssBoth
  191. TabOrder = 0
  192. WordWrap = False
  193. end
  194. object Button1: TButton
  195. Left = 226
  196. Top = 21
  197. Width = 64
  198. Height = 18
  199. Anchors = [akTop, akRight]
  200. Caption = 'Params'
  201. TabOrder = 1
  202. OnClick = Button1Click
  203. end
  204. object Button4: TButton
  205. Left = 226
  206. Top = 42
  207. Width = 64
  208. Height = 18
  209. Anchors = [akTop, akRight]
  210. Caption = 'Asm'
  211. TabOrder = 2
  212. OnClick = Button4Click
  213. end
  214. end
  215. end
  216. object TabSheet2: TTabSheet
  217. Caption = 'Fragment Program'
  218. ImageIndex = 1
  219. object Splitter2: TSplitter
  220. Left = 0
  221. Top = 289
  222. Width = 301
  223. Height = 3
  224. Cursor = crVSplit
  225. Align = alBottom
  226. Color = clBtnShadow
  227. ParentColor = False
  228. ExplicitTop = 287
  229. end
  230. object Panel4: TPanel
  231. Left = 0
  232. Top = 0
  233. Width = 301
  234. Height = 25
  235. Align = alTop
  236. BevelOuter = bvNone
  237. TabOrder = 0
  238. object LabelFragProfile: TLabel
  239. Left = 88
  240. Top = 5
  241. Width = 63
  242. Height = 13
  243. Caption = 'Using profile:'
  244. end
  245. object CBFragmentProgram: TCheckBox
  246. Left = 6
  247. Top = 4
  248. Width = 67
  249. Height = 17
  250. Caption = 'Enabled'
  251. Checked = True
  252. State = cbChecked
  253. TabOrder = 0
  254. OnClick = CBFragmentProgramClick
  255. end
  256. end
  257. object Panel6: TPanel
  258. Left = 0
  259. Top = 25
  260. Width = 301
  261. Height = 264
  262. Align = alClient
  263. Caption = 'Panel6'
  264. TabOrder = 1
  265. object Panel7: TPanel
  266. Left = 1
  267. Top = 1
  268. Width = 299
  269. Height = 16
  270. Align = alTop
  271. BevelOuter = bvNone
  272. Caption = 'Shader Code'
  273. Color = clBtnHighlight
  274. TabOrder = 0
  275. end
  276. object MemoFragCode: TMemo
  277. Left = 1
  278. Top = 17
  279. Width = 299
  280. Height = 221
  281. Align = alClient
  282. Font.Charset = ANSI_CHARSET
  283. Font.Color = clWindowText
  284. Font.Height = -11
  285. Font.Name = 'Lucida Console'
  286. Font.Style = []
  287. ParentFont = False
  288. ScrollBars = ssBoth
  289. TabOrder = 1
  290. WordWrap = False
  291. OnChange = MemoFragCodeChange
  292. end
  293. object Panel3: TPanel
  294. Left = 1
  295. Top = 238
  296. Width = 299
  297. Height = 25
  298. Align = alBottom
  299. BevelOuter = bvNone
  300. TabOrder = 2
  301. DesignSize = (
  302. 299
  303. 25)
  304. object ButtonApplyFP: TButton
  305. Left = 224
  306. Top = 2
  307. Width = 67
  308. Height = 20
  309. Anchors = [akTop, akRight]
  310. Caption = 'Apply'
  311. Enabled = False
  312. TabOrder = 0
  313. OnClick = ButtonApplyFPClick
  314. end
  315. end
  316. end
  317. object Panel8: TPanel
  318. Left = 0
  319. Top = 292
  320. Width = 301
  321. Height = 90
  322. Align = alBottom
  323. TabOrder = 2
  324. DesignSize = (
  325. 301
  326. 90)
  327. object Label1: TLabel
  328. Left = 228
  329. Top = 5
  330. Width = 30
  331. Height = 13
  332. Anchors = [akTop, akRight]
  333. Caption = 'Show:'
  334. end
  335. object Memo3: TMemo
  336. Left = 1
  337. Top = 1
  338. Width = 216
  339. Height = 88
  340. Align = alLeft
  341. Anchors = [akLeft, akTop, akRight, akBottom]
  342. Color = clBtnFace
  343. Font.Charset = ANSI_CHARSET
  344. Font.Color = clWindowText
  345. Font.Height = -11
  346. Font.Name = 'Courier New'
  347. Font.Style = []
  348. ParentFont = False
  349. ReadOnly = True
  350. ScrollBars = ssBoth
  351. TabOrder = 0
  352. WordWrap = False
  353. end
  354. object Button2: TButton
  355. Left = 226
  356. Top = 21
  357. Width = 64
  358. Height = 18
  359. Anchors = [akTop, akRight]
  360. Caption = 'Params'
  361. TabOrder = 1
  362. OnClick = Button2Click
  363. end
  364. object Button3: TButton
  365. Left = 226
  366. Top = 42
  367. Width = 64
  368. Height = 18
  369. Anchors = [akTop, akRight]
  370. Caption = 'Asm'
  371. TabOrder = 2
  372. OnClick = Button3Click
  373. end
  374. end
  375. end
  376. object TabSheet3: TTabSheet
  377. Caption = 'Controls'
  378. ImageIndex = 2
  379. DesignSize = (
  380. 301
  381. 382)
  382. object Label16: TLabel
  383. Left = 8
  384. Top = 272
  385. Width = 282
  386. Height = 13
  387. Caption = 'Note: NV2x class hardware may not honor negative values'
  388. end
  389. object GroupBox1: TGroupBox
  390. Left = 8
  391. Top = 40
  392. Width = 281
  393. Height = 105
  394. Anchors = [akLeft, akTop, akRight]
  395. Caption = ' TexCoord. Shifts '
  396. TabOrder = 0
  397. DesignSize = (
  398. 281
  399. 105)
  400. object Label18: TLabel
  401. Left = 64
  402. Top = 86
  403. Width = 193
  404. Height = 13
  405. Alignment = taCenter
  406. Anchors = [akLeft, akTop, akRight]
  407. AutoSize = False
  408. Caption = '0'
  409. end
  410. object Label3: TLabel
  411. Left = 16
  412. Top = 24
  413. Width = 27
  414. Height = 13
  415. Caption = 'Tex 0'
  416. end
  417. object Label4: TLabel
  418. Left = 16
  419. Top = 40
  420. Width = 27
  421. Height = 13
  422. Caption = 'Tex 1'
  423. end
  424. object Label5: TLabel
  425. Left = 16
  426. Top = 56
  427. Width = 27
  428. Height = 13
  429. Caption = 'Tex 2'
  430. end
  431. object Label6: TLabel
  432. Left = 16
  433. Top = 72
  434. Width = 27
  435. Height = 13
  436. Caption = 'Tex 3'
  437. end
  438. object Label11: TLabel
  439. Left = 32
  440. Top = 24
  441. Width = 3
  442. Height = 13
  443. end
  444. object Label12: TLabel
  445. Left = 56
  446. Top = 86
  447. Width = 10
  448. Height = 13
  449. Caption = '-1'
  450. end
  451. object Label14: TLabel
  452. Left = 252
  453. Top = 86
  454. Width = 6
  455. Height = 13
  456. Anchors = [akTop, akRight]
  457. Caption = '1'
  458. end
  459. object TrackBar1: TTrackBar
  460. Left = 56
  461. Top = 24
  462. Width = 206
  463. Height = 15
  464. Anchors = [akLeft, akTop, akRight]
  465. Max = 100
  466. Position = 50
  467. TabOrder = 0
  468. ThumbLength = 12
  469. TickMarks = tmBoth
  470. TickStyle = tsNone
  471. end
  472. object TrackBar2: TTrackBar
  473. Left = 56
  474. Top = 40
  475. Width = 206
  476. Height = 15
  477. Anchors = [akLeft, akTop, akRight]
  478. Max = 100
  479. Position = 50
  480. TabOrder = 1
  481. ThumbLength = 12
  482. TickMarks = tmBoth
  483. TickStyle = tsNone
  484. end
  485. object TrackBar3: TTrackBar
  486. Left = 56
  487. Top = 56
  488. Width = 206
  489. Height = 15
  490. Anchors = [akLeft, akTop, akRight]
  491. Max = 100
  492. Position = 50
  493. TabOrder = 2
  494. ThumbLength = 12
  495. TickMarks = tmBoth
  496. TickStyle = tsNone
  497. end
  498. object TrackBar4: TTrackBar
  499. Left = 56
  500. Top = 72
  501. Width = 206
  502. Height = 15
  503. Anchors = [akLeft, akTop, akRight]
  504. Max = 100
  505. Position = 50
  506. TabOrder = 3
  507. ThumbLength = 12
  508. TickMarks = tmBoth
  509. TickStyle = tsNone
  510. end
  511. end
  512. object GroupBox2: TGroupBox
  513. Left = 8
  514. Top = 160
  515. Width = 281
  516. Height = 105
  517. Anchors = [akLeft, akTop, akRight]
  518. Caption = ' Blending Weights '
  519. TabOrder = 1
  520. DesignSize = (
  521. 281
  522. 105)
  523. object Label17: TLabel
  524. Left = 64
  525. Top = 86
  526. Width = 193
  527. Height = 13
  528. Alignment = taCenter
  529. Anchors = [akLeft, akTop, akRight]
  530. AutoSize = False
  531. Caption = '0'
  532. end
  533. object Label7: TLabel
  534. Left = 16
  535. Top = 24
  536. Width = 27
  537. Height = 13
  538. Caption = 'Tex 0'
  539. end
  540. object Label8: TLabel
  541. Left = 16
  542. Top = 40
  543. Width = 27
  544. Height = 13
  545. Caption = 'Tex 1'
  546. end
  547. object Label9: TLabel
  548. Left = 16
  549. Top = 56
  550. Width = 27
  551. Height = 13
  552. Caption = 'Tex 2'
  553. end
  554. object Label10: TLabel
  555. Left = 16
  556. Top = 72
  557. Width = 27
  558. Height = 13
  559. Caption = 'Tex 3'
  560. end
  561. object Label13: TLabel
  562. Left = 252
  563. Top = 86
  564. Width = 6
  565. Height = 13
  566. Anchors = [akTop, akRight]
  567. Caption = '1'
  568. end
  569. object Label15: TLabel
  570. Left = 56
  571. Top = 86
  572. Width = 10
  573. Height = 13
  574. Caption = '-1'
  575. end
  576. object TrackBar5: TTrackBar
  577. Left = 56
  578. Top = 24
  579. Width = 206
  580. Height = 15
  581. Anchors = [akLeft, akTop, akRight]
  582. Max = 100
  583. Position = 75
  584. TabOrder = 0
  585. ThumbLength = 12
  586. TickMarks = tmBoth
  587. TickStyle = tsNone
  588. end
  589. object TrackBar6: TTrackBar
  590. Left = 56
  591. Top = 40
  592. Width = 206
  593. Height = 15
  594. Anchors = [akLeft, akTop, akRight]
  595. Max = 100
  596. Position = 75
  597. TabOrder = 1
  598. ThumbLength = 12
  599. TickMarks = tmBoth
  600. TickStyle = tsNone
  601. end
  602. object TrackBar7: TTrackBar
  603. Left = 56
  604. Top = 56
  605. Width = 206
  606. Height = 15
  607. Anchors = [akLeft, akTop, akRight]
  608. Max = 100
  609. Position = 75
  610. TabOrder = 2
  611. ThumbLength = 12
  612. TickMarks = tmBoth
  613. TickStyle = tsNone
  614. end
  615. object TrackBar8: TTrackBar
  616. Left = 56
  617. Top = 72
  618. Width = 206
  619. Height = 15
  620. Anchors = [akLeft, akTop, akRight]
  621. Max = 100
  622. Position = 65
  623. TabOrder = 3
  624. ThumbLength = 12
  625. TickMarks = tmBoth
  626. TickStyle = tsNone
  627. end
  628. end
  629. object CheckBox2: TCheckBox
  630. Left = 14
  631. Top = 12
  632. Width = 131
  633. Height = 17
  634. Caption = 'CgShader Enabled'
  635. Checked = True
  636. Font.Charset = ANSI_CHARSET
  637. Font.Color = clWindowText
  638. Font.Height = -11
  639. Font.Name = 'Tahoma'
  640. Font.Style = []
  641. ParentFont = False
  642. State = cbChecked
  643. TabOrder = 2
  644. OnClick = CheckBox2Click
  645. end
  646. end
  647. end
  648. end
  649. object Panel9: TPanel
  650. Left = 316
  651. Top = 0
  652. Width = 679
  653. Height = 414
  654. Align = alClient
  655. Font.Charset = ANSI_CHARSET
  656. Font.Color = clWindowText
  657. Font.Height = -19
  658. Font.Name = 'Tahoma'
  659. Font.Style = [fsBold]
  660. ParentFont = False
  661. TabOrder = 1
  662. object PanelFPS: TPanel
  663. Left = 1
  664. Top = 1
  665. Width = 677
  666. Height = 48
  667. Align = alTop
  668. Caption = 'FPS'
  669. Font.Charset = ANSI_CHARSET
  670. Font.Color = clWindowText
  671. Font.Height = -19
  672. Font.Name = 'Trebuchet MS'
  673. Font.Style = []
  674. ParentFont = False
  675. TabOrder = 0
  676. end
  677. object GLSceneViewer1: TGLSceneViewer
  678. Left = 1
  679. Top = 49
  680. Width = 677
  681. Height = 364
  682. Camera = GLCamera1
  683. Buffer.Lighting = False
  684. Buffer.AntiAliasing = aa4xHQ
  685. FieldOfView = 149.276763916015600000
  686. PenAsTouch = False
  687. Align = alClient
  688. OnMouseDown = GLSceneViewer1MouseDown
  689. OnMouseMove = GLSceneViewer1MouseMove
  690. TabOrder = 1
  691. end
  692. end
  693. object GLScene1: TGLScene
  694. Left = 32
  695. Top = 80
  696. object GLXYZGrid1: TGLXYZGrid
  697. Position.Coordinates = {000000006F12033B000000000000803F}
  698. LineColor.Color = {938C0C3E938E0E3F938C0C3E0000803F}
  699. XSamplingScale.Min = -2.000000000000000000
  700. XSamplingScale.Max = 2.000000000000000000
  701. XSamplingScale.Step = 0.100000001490116100
  702. YSamplingScale.Step = 0.100000001490116100
  703. ZSamplingScale.Min = -2.000000000000000000
  704. ZSamplingScale.Max = 2.000000000000000000
  705. ZSamplingScale.Step = 0.100000001490116100
  706. Parts = [gpX, gpZ]
  707. end
  708. object GLPlane1: TGLPlane
  709. Material.MaterialLibrary = GLMatLib
  710. Material.LibMaterialName = 'LibMaterial'
  711. Direction.Coordinates = {000000000000803F0000000000000000}
  712. PitchAngle = 90.000000000000000000
  713. Up.Coordinates = {0000000000000000000080BF00000000}
  714. Height = 1.000000000000000000
  715. Width = 1.000000000000000000
  716. end
  717. object GLCamera1: TGLCamera
  718. DepthOfView = 100.000000000000000000
  719. FocalLength = 50.000000000000000000
  720. TargetObject = GLPlane1
  721. CameraStyle = csInfinitePerspective
  722. Position.Coordinates = {000000000000C03F0000803F0000803F}
  723. end
  724. end
  725. object GLCadencer1: TGLCadencer
  726. Scene = GLScene1
  727. OnProgress = GLCadencer1Progress
  728. Left = 32
  729. Top = 144
  730. end
  731. object CgShader1: TCgShader
  732. VertexProgram.OnApply = CgShader1ApplyVP
  733. FragmentProgram.OnApply = CgShader1ApplyFP
  734. FragmentProgram.OnUnApply = CgShader1UnApplyFP
  735. OnApplyVP = CgShader1ApplyVP
  736. OnApplyFP = CgShader1ApplyFP
  737. OnUnApplyFP = CgShader1UnApplyFP
  738. OnInitialize = CgShader1Initialize
  739. Left = 168
  740. Top = 80
  741. end
  742. object Timer1: TTimer
  743. OnTimer = Timer1Timer
  744. Left = 164
  745. Top = 144
  746. end
  747. object GLMatLib: TGLMaterialLibrary
  748. Materials = <
  749. item
  750. Name = 'LibMaterial'
  751. Tag = 0
  752. Material.Texture.Disabled = False
  753. Material.MaterialLibrary = GLMatLib
  754. Shader = CgShader1
  755. end
  756. item
  757. Name = 'LibMaterial1'
  758. Tag = 0
  759. Material.Texture.Disabled = False
  760. Material.MaterialLibrary = GLMatLib
  761. end
  762. item
  763. Name = 'LibMaterial2'
  764. Tag = 0
  765. Material.MaterialLibrary = GLMatLib
  766. end
  767. item
  768. Name = 'LibMaterial3'
  769. Tag = 0
  770. Material.MaterialLibrary = GLMatLib
  771. end>
  772. TexturePaths = '..\\..\\..\\media\\'
  773. Left = 105
  774. Top = 80
  775. end
  776. end