From 21e1430caab518e51bec80796e26cbf615e04f04 Mon Sep 17 00:00:00 2001 From: rpolzer Date: Tue, 16 Sep 2008 11:34:35 +0000 Subject: [PATCH] oops, get back setup/data/tools git-svn-id: svn://svn.icculus.org/netradiant/trunk@60 61c419a2-8eb2-4b30-bcec-8cead039b335 --- setup/data/tools/bitmaps/black.bmp | Bin 0 -> 248 bytes setup/data/tools/bitmaps/brush_flipx.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/brush_flipy.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/brush_flipz.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/brush_rotatex.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/brush_rotatey.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/brush_rotatez.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/cap_bevel.bmp | Bin 0 -> 154 bytes setup/data/tools/bitmaps/cap_cylinder.bmp | Bin 0 -> 156 bytes setup/data/tools/bitmaps/cap_endcap.bmp | Bin 0 -> 154 bytes setup/data/tools/bitmaps/cap_ibevel.bmp | Bin 0 -> 154 bytes setup/data/tools/bitmaps/cap_iendcap.bmp | Bin 0 -> 154 bytes setup/data/tools/bitmaps/console.bmp | Bin 0 -> 776 bytes setup/data/tools/bitmaps/curve_cap.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/dontselectcurve.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/dontselectmodel.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/ellipsis.bmp | Bin 0 -> 108 bytes setup/data/tools/bitmaps/entities.bmp | Bin 0 -> 776 bytes setup/data/tools/bitmaps/file_open.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/file_save.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/icon.bmp | Bin 0 -> 3126 bytes setup/data/tools/bitmaps/lightinspector.bmp | Bin 0 -> 776 bytes setup/data/tools/bitmaps/logo.bmp | Bin 0 -> 47936 bytes setup/data/tools/bitmaps/modify_edges.bmp | Bin 0 -> 316 bytes setup/data/tools/bitmaps/modify_faces.bmp | Bin 0 -> 316 bytes setup/data/tools/bitmaps/modify_vertices.bmp | Bin 0 -> 316 bytes setup/data/tools/bitmaps/noFalloff.bmp | Bin 0 -> 1592 bytes setup/data/tools/bitmaps/notex.bmp | Bin 0 -> 4312 bytes setup/data/tools/bitmaps/patch_bend.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/patch_drilldown.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/patch_insdel.bmp | Bin 0 -> 238 bytes .../tools/bitmaps/patch_showboundingbox.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/patch_weld.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/patch_wireframe.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/popup_selection.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/redo.bmp | Bin 0 -> 776 bytes setup/data/tools/bitmaps/refresh_models.bmp | Bin 0 -> 776 bytes setup/data/tools/bitmaps/scalelockx.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/scalelocky.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/scalelockz.bmp | Bin 0 -> 238 bytes .../data/tools/bitmaps/select_mouseresize.bmp | Bin 0 -> 200 bytes .../data/tools/bitmaps/select_mouserotate.bmp | Bin 0 -> 238 bytes .../data/tools/bitmaps/select_mousescale.bmp | Bin 0 -> 238 bytes .../tools/bitmaps/select_mousetranslate.bmp | Bin 0 -> 238 bytes .../data/tools/bitmaps/selection_csgmerge.bmp | Bin 0 -> 238 bytes .../tools/bitmaps/selection_csgsubtract.bmp | Bin 0 -> 238 bytes .../tools/bitmaps/selection_makehollow.bmp | Bin 0 -> 238 bytes .../bitmaps/selection_selectcompletetall.bmp | Bin 0 -> 238 bytes .../tools/bitmaps/selection_selectinside.bmp | Bin 0 -> 238 bytes .../bitmaps/selection_selectpartialtall.bmp | Bin 0 -> 238 bytes .../bitmaps/selection_selecttouching.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/shadernotex.bmp | Bin 0 -> 4308 bytes setup/data/tools/bitmaps/show_entities.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/splash.bmp | Bin 0 -> 299934 bytes setup/data/tools/bitmaps/texture_browser.bmp | Bin 0 -> 776 bytes setup/data/tools/bitmaps/texture_lock.bmp | Bin 0 -> 774 bytes setup/data/tools/bitmaps/textures_popup.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/undo.bmp | Bin 0 -> 776 bytes .../data/tools/bitmaps/view_cameratoggle.bmp | Bin 0 -> 238 bytes .../data/tools/bitmaps/view_cameraupdate.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/view_change.bmp | Bin 0 -> 126 bytes setup/data/tools/bitmaps/view_clipper.bmp | Bin 0 -> 238 bytes .../data/tools/bitmaps/view_cubicclipping.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/view_entity.bmp | Bin 0 -> 238 bytes setup/data/tools/bitmaps/white.bmp | Bin 0 -> 248 bytes setup/data/tools/bitmaps/window1.bmp | Bin 0 -> 572 bytes setup/data/tools/bitmaps/window2.bmp | Bin 0 -> 568 bytes setup/data/tools/bitmaps/window3.bmp | Bin 0 -> 572 bytes setup/data/tools/bitmaps/window4.bmp | Bin 0 -> 572 bytes .../data/tools/gl/lighting_DBS_XY_Z_arbfp1.cg | 92 +++ .../data/tools/gl/lighting_DBS_XY_Z_arbvp1.cg | 78 +++ setup/data/tools/gl/lighting_DBS_omni_fp.glp | 86 +++ setup/data/tools/gl/lighting_DBS_omni_fp.glsl | 73 +++ setup/data/tools/gl/lighting_DBS_omni_vp.glp | 410 +++++++++++++ setup/data/tools/gl/lighting_DBS_omni_vp.glsl | 58 ++ setup/data/tools/gl/utils.cg | 36 ++ setup/data/tools/gl/zfill_arbfp1.cg | 47 ++ setup/data/tools/gl/zfill_arbvp1.cg | 49 ++ setup/data/tools/gl/zfill_fp.glp | 19 + setup/data/tools/gl/zfill_fp.glsl | 29 + setup/data/tools/gl/zfill_vp.glp | 384 ++++++++++++ setup/data/tools/gl/zfill_vp.glsl | 35 ++ setup/data/tools/global.xlink | 11 + .../tools/plugins/bitmaps/bobtoolz_caulk.bmp | Bin 0 -> 320 bytes .../plugins/bitmaps/bobtoolz_cleanup.bmp | Bin 0 -> 316 bytes .../plugins/bitmaps/bobtoolz_dropent.bmp | Bin 0 -> 312 bytes .../tools/plugins/bitmaps/bobtoolz_merge.bmp | Bin 0 -> 312 bytes .../tools/plugins/bitmaps/bobtoolz_poly.bmp | Bin 0 -> 320 bytes .../tools/plugins/bitmaps/bobtoolz_split.bmp | Bin 0 -> 312 bytes .../bitmaps/bobtoolz_trainpathplot.bmp | Bin 0 -> 324 bytes .../plugins/bitmaps/bobtoolz_treeplanter.bmp | Bin 0 -> 356 bytes .../plugins/bitmaps/bobtoolz_turnedge.bmp | Bin 0 -> 332 bytes .../tools/plugins/bitmaps/ufoai_actorclip.bmp | Bin 0 -> 494 bytes .../tools/plugins/bitmaps/ufoai_level1.bmp | Bin 0 -> 198 bytes .../tools/plugins/bitmaps/ufoai_level2.bmp | Bin 0 -> 198 bytes .../tools/plugins/bitmaps/ufoai_level3.bmp | Bin 0 -> 198 bytes .../tools/plugins/bitmaps/ufoai_level4.bmp | Bin 0 -> 198 bytes .../tools/plugins/bitmaps/ufoai_level5.bmp | Bin 0 -> 198 bytes .../tools/plugins/bitmaps/ufoai_level6.bmp | Bin 0 -> 198 bytes .../tools/plugins/bitmaps/ufoai_level7.bmp | Bin 0 -> 198 bytes .../tools/plugins/bitmaps/ufoai_level8.bmp | Bin 0 -> 198 bytes .../tools/plugins/bitmaps/ufoai_nodraw.bmp | Bin 0 -> 498 bytes .../tools/plugins/bitmaps/ufoai_stepon.bmp | Bin 0 -> 458 bytes .../plugins/bitmaps/ufoai_weaponclip.bmp | Bin 0 -> 558 bytes setup/data/tools/plugins/bt/bt-el1.txt | 17 + setup/data/tools/plugins/bt/bt-el2.txt | 0 setup/data/tools/plugins/bt/door-tex-trim.txt | 5 + setup/data/tools/plugins/bt/door-tex.txt | 10 + setup/data/tools/plugins/bt/tp_ent.txt | 14 + setup/data/tools/q3data.qdt | 552 ++++++++++++++++++ 110 files changed, 2005 insertions(+) create mode 100644 setup/data/tools/bitmaps/black.bmp create mode 100644 setup/data/tools/bitmaps/brush_flipx.bmp create mode 100644 setup/data/tools/bitmaps/brush_flipy.bmp create mode 100644 setup/data/tools/bitmaps/brush_flipz.bmp create mode 100644 setup/data/tools/bitmaps/brush_rotatex.bmp create mode 100644 setup/data/tools/bitmaps/brush_rotatey.bmp create mode 100644 setup/data/tools/bitmaps/brush_rotatez.bmp create mode 100644 setup/data/tools/bitmaps/cap_bevel.bmp create mode 100644 setup/data/tools/bitmaps/cap_cylinder.bmp create mode 100644 setup/data/tools/bitmaps/cap_endcap.bmp create mode 100644 setup/data/tools/bitmaps/cap_ibevel.bmp create mode 100644 setup/data/tools/bitmaps/cap_iendcap.bmp create mode 100644 setup/data/tools/bitmaps/console.bmp create mode 100644 setup/data/tools/bitmaps/curve_cap.bmp create mode 100644 setup/data/tools/bitmaps/dontselectcurve.bmp create mode 100644 setup/data/tools/bitmaps/dontselectmodel.bmp create mode 100644 setup/data/tools/bitmaps/ellipsis.bmp create mode 100644 setup/data/tools/bitmaps/entities.bmp create mode 100644 setup/data/tools/bitmaps/file_open.bmp create mode 100644 setup/data/tools/bitmaps/file_save.bmp create mode 100644 setup/data/tools/bitmaps/icon.bmp create mode 100644 setup/data/tools/bitmaps/lightinspector.bmp create mode 100644 setup/data/tools/bitmaps/logo.bmp create mode 100644 setup/data/tools/bitmaps/modify_edges.bmp create mode 100644 setup/data/tools/bitmaps/modify_faces.bmp create mode 100644 setup/data/tools/bitmaps/modify_vertices.bmp create mode 100644 setup/data/tools/bitmaps/noFalloff.bmp create mode 100644 setup/data/tools/bitmaps/notex.bmp create mode 100644 setup/data/tools/bitmaps/patch_bend.bmp create mode 100644 setup/data/tools/bitmaps/patch_drilldown.bmp create mode 100644 setup/data/tools/bitmaps/patch_insdel.bmp create mode 100644 setup/data/tools/bitmaps/patch_showboundingbox.bmp create mode 100644 setup/data/tools/bitmaps/patch_weld.bmp create mode 100644 setup/data/tools/bitmaps/patch_wireframe.bmp create mode 100644 setup/data/tools/bitmaps/popup_selection.bmp create mode 100644 setup/data/tools/bitmaps/redo.bmp create mode 100644 setup/data/tools/bitmaps/refresh_models.bmp create mode 100644 setup/data/tools/bitmaps/scalelockx.bmp create mode 100644 setup/data/tools/bitmaps/scalelocky.bmp create mode 100644 setup/data/tools/bitmaps/scalelockz.bmp create mode 100644 setup/data/tools/bitmaps/select_mouseresize.bmp create mode 100644 setup/data/tools/bitmaps/select_mouserotate.bmp create mode 100644 setup/data/tools/bitmaps/select_mousescale.bmp create mode 100644 setup/data/tools/bitmaps/select_mousetranslate.bmp create mode 100644 setup/data/tools/bitmaps/selection_csgmerge.bmp create mode 100644 setup/data/tools/bitmaps/selection_csgsubtract.bmp create mode 100644 setup/data/tools/bitmaps/selection_makehollow.bmp create mode 100644 setup/data/tools/bitmaps/selection_selectcompletetall.bmp create mode 100644 setup/data/tools/bitmaps/selection_selectinside.bmp create mode 100644 setup/data/tools/bitmaps/selection_selectpartialtall.bmp create mode 100644 setup/data/tools/bitmaps/selection_selecttouching.bmp create mode 100644 setup/data/tools/bitmaps/shadernotex.bmp create mode 100644 setup/data/tools/bitmaps/show_entities.bmp create mode 100644 setup/data/tools/bitmaps/splash.bmp create mode 100644 setup/data/tools/bitmaps/texture_browser.bmp create mode 100644 setup/data/tools/bitmaps/texture_lock.bmp create mode 100644 setup/data/tools/bitmaps/textures_popup.bmp create mode 100644 setup/data/tools/bitmaps/undo.bmp create mode 100644 setup/data/tools/bitmaps/view_cameratoggle.bmp create mode 100644 setup/data/tools/bitmaps/view_cameraupdate.bmp create mode 100644 setup/data/tools/bitmaps/view_change.bmp create mode 100644 setup/data/tools/bitmaps/view_clipper.bmp create mode 100644 setup/data/tools/bitmaps/view_cubicclipping.bmp create mode 100644 setup/data/tools/bitmaps/view_entity.bmp create mode 100644 setup/data/tools/bitmaps/white.bmp create mode 100644 setup/data/tools/bitmaps/window1.bmp create mode 100644 setup/data/tools/bitmaps/window2.bmp create mode 100644 setup/data/tools/bitmaps/window3.bmp create mode 100644 setup/data/tools/bitmaps/window4.bmp create mode 100644 setup/data/tools/gl/lighting_DBS_XY_Z_arbfp1.cg create mode 100644 setup/data/tools/gl/lighting_DBS_XY_Z_arbvp1.cg create mode 100644 setup/data/tools/gl/lighting_DBS_omni_fp.glp create mode 100644 setup/data/tools/gl/lighting_DBS_omni_fp.glsl create mode 100644 setup/data/tools/gl/lighting_DBS_omni_vp.glp create mode 100644 setup/data/tools/gl/lighting_DBS_omni_vp.glsl create mode 100644 setup/data/tools/gl/utils.cg create mode 100644 setup/data/tools/gl/zfill_arbfp1.cg create mode 100644 setup/data/tools/gl/zfill_arbvp1.cg create mode 100644 setup/data/tools/gl/zfill_fp.glp create mode 100644 setup/data/tools/gl/zfill_fp.glsl create mode 100644 setup/data/tools/gl/zfill_vp.glp create mode 100644 setup/data/tools/gl/zfill_vp.glsl create mode 100644 setup/data/tools/global.xlink create mode 100644 setup/data/tools/plugins/bitmaps/bobtoolz_caulk.bmp create mode 100644 setup/data/tools/plugins/bitmaps/bobtoolz_cleanup.bmp create mode 100644 setup/data/tools/plugins/bitmaps/bobtoolz_dropent.bmp create mode 100644 setup/data/tools/plugins/bitmaps/bobtoolz_merge.bmp create mode 100644 setup/data/tools/plugins/bitmaps/bobtoolz_poly.bmp create mode 100644 setup/data/tools/plugins/bitmaps/bobtoolz_split.bmp create mode 100644 setup/data/tools/plugins/bitmaps/bobtoolz_trainpathplot.bmp create mode 100644 setup/data/tools/plugins/bitmaps/bobtoolz_treeplanter.bmp create mode 100644 setup/data/tools/plugins/bitmaps/bobtoolz_turnedge.bmp create mode 100644 setup/data/tools/plugins/bitmaps/ufoai_actorclip.bmp create mode 100644 setup/data/tools/plugins/bitmaps/ufoai_level1.bmp create mode 100644 setup/data/tools/plugins/bitmaps/ufoai_level2.bmp create mode 100644 setup/data/tools/plugins/bitmaps/ufoai_level3.bmp create mode 100644 setup/data/tools/plugins/bitmaps/ufoai_level4.bmp create mode 100644 setup/data/tools/plugins/bitmaps/ufoai_level5.bmp create mode 100644 setup/data/tools/plugins/bitmaps/ufoai_level6.bmp create mode 100644 setup/data/tools/plugins/bitmaps/ufoai_level7.bmp create mode 100644 setup/data/tools/plugins/bitmaps/ufoai_level8.bmp create mode 100644 setup/data/tools/plugins/bitmaps/ufoai_nodraw.bmp create mode 100644 setup/data/tools/plugins/bitmaps/ufoai_stepon.bmp create mode 100644 setup/data/tools/plugins/bitmaps/ufoai_weaponclip.bmp create mode 100644 setup/data/tools/plugins/bt/bt-el1.txt create mode 100644 setup/data/tools/plugins/bt/bt-el2.txt create mode 100644 setup/data/tools/plugins/bt/door-tex-trim.txt create mode 100644 setup/data/tools/plugins/bt/door-tex.txt create mode 100644 setup/data/tools/plugins/bt/tp_ent.txt create mode 100644 setup/data/tools/q3data.qdt diff --git a/setup/data/tools/bitmaps/black.bmp b/setup/data/tools/bitmaps/black.bmp new file mode 100644 index 0000000000000000000000000000000000000000..8fc59ba111ea578deadd075b190b418f7cf1fed3 GIT binary patch literal 248 ocmZ?r{lNeMW(*7r8Vn2!98k>2AOV&*#K6EH#0|kmeU3K|M1g19hwBFqEX1^}jW5kUX| literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/brush_rotatex.bmp b/setup/data/tools/bitmaps/brush_rotatex.bmp new file mode 100644 index 0000000000000000000000000000000000000000..b079071e60c0aaa771358f90434bdfb5c4a044a3 GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Lg39MuT!+(bV3=LT22nz}#0YyO}Fi%KO z5ljmzK`0m>CJzx66ciK?6ckhxR1{=j6ciK^5)@!y01JS{L1r)tg2V+tqF{A!je>#z DAzclJ literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/brush_rotatey.bmp b/setup/data/tools/bitmaps/brush_rotatey.bmp new file mode 100644 index 0000000000000000000000000000000000000000..efcfec247e921f3e77c190221abfb2c9db02c3c8 GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Lg39MuT!+(bV3=LT22n!0L03`@d2tp|- zLTEuKUr-P#4;2;^05KE=1sNCx1qBra1sE8>G+10nNKgdV?f5pav-%JJs`axGeBk`3cf{{aKz{{svRAV)y$0{~vHFm(U` literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/console.bmp b/setup/data/tools/bitmaps/console.bmp new file mode 100644 index 0000000000000000000000000000000000000000..c45c686699c3fc6838109f83def9a075a591b805 GIT binary patch literal 776 zcmZ?r!Hm5G`qGX&D(A_6`nCV3%82S;5U`U|_JYuyA&A_VDoV z_xF#Aib@3Al9rZgYinz7?_gtNV{UG4Wo2bzVxq6FZ)j);vBk{H%)!ASI5;>yJ|3b4 z8541%(ua cn3Na<1;Gwy1ewDKF$N^S2(|}oAjnV#0EEK{$^ZZW literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/dontselectmodel.bmp b/setup/data/tools/bitmaps/dontselectmodel.bmp new file mode 100644 index 0000000000000000000000000000000000000000..e81b118950ff73cb8aec9d83770c59a68ede1251 GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Lg2`uD)hW`u<4F4G#u*eZ3BnYyEfkA*# z5Tu%sfdMQaz`y_!U<8Q?3VJ($cKV%;e&0D zb0BC5%ThNtx4OEzIdkSLT(BS@ARsI>EIKL*q7p(PtDnO#$I;QTva)iW4|gA5-@w2?JnC(2ZHtPE`uqE*Oqt^1 z;^N`q;p^iIQGb}>@Lh(xKN)`BWVpGGVci^tISUyUT3K1;<>qyFcTbow!NI{1q{Y+o zEW^3`4EKLB{QS@GAAAj;6l zuMA(~Vq;57N*fy++uPf$tSoJ9Z5@)fTBC)3Zf;^(^DyYh1L%FD}Z zYHAuA8_mqjt*oqU?Q9(#9bH}BJUu-(C~o}9^7X9P*-m6LWKOD{Ct|J6lI5M^{%@FHcWDKfmDM;E0Hb*x1;lq@;}W^xT}BqN1YmiV7nm mBU6YLkS%tOPL6J_u3lbVet!N?EpcEi85y~`xkbgr3=9B$)j*a2 literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/file_open.bmp b/setup/data/tools/bitmaps/file_open.bmp new file mode 100644 index 0000000000000000000000000000000000000000..1f1770c33a812e769f0eec75f1333d3a5436baab GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Lg2^{2s0|yxXGyG>@`2U}Qp`ihXD(u2a zXg~q1Oi4+B#l^+Ng-J<407N?|DHuWo6oerH3WkPYl?uYb!omVdN(zRChK2@8N(#at cVI?Ic1|}sXB?Shk@nBj(NkIY3XJAqS0J5YQbpQYW literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/file_save.bmp b/setup/data/tools/bitmaps/file_save.bmp new file mode 100644 index 0000000000000000000000000000000000000000..651afb68952db64d2954394aa6252f2fb3bccf3b GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Lg2^{2s0|yxXGyG>@XlTHp0=KXd3_z4H pDHt;_FbFbZrx`%v#vlNZXE0_`Fc1_J1gXbMGeFfbGATgq0RXoB57Ynv literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/icon.bmp b/setup/data/tools/bitmaps/icon.bmp new file mode 100644 index 0000000000000000000000000000000000000000..e270952b393fa7a60d566fafaea28cba63cdc761 GIT binary patch literal 3126 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 b_-Wnyq2bQq=*neJhoi5ChM!VDF)#oCNlI?m literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/modify_edges.bmp b/setup/data/tools/bitmaps/modify_edges.bmp new file mode 100644 index 0000000000000000000000000000000000000000..620fd324cf03ec74c6158a1ae4c68ad34485ac2d GIT binary patch literal 316 zcmZ?rwP9oc11|;!1`P%V1_1^J27U$x21W)BusDbi;$~m~VO9nP1`uvwU|{(F|33o= zHZ*{E3=B-@fEf-TGR%xnz|0I5K=2vC0!VzY05TsWKrWwwfsqlcAL<^E-#~mOn1LVx Z6c;csFo5~UD!@)=f*Qfhz`(@7006U)3N!!! literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/modify_faces.bmp b/setup/data/tools/bitmaps/modify_faces.bmp new file mode 100644 index 0000000000000000000000000000000000000000..3eb3838dd75b03077d57605d68509250530e2144 GIT binary patch literal 316 zcmZ?rwP9oc11|;!1`P%V1_1^J27U$x21W)BusDbi;$~m~VO9nP1`uvwU|{(F|33o= zHZ*{E3=B-@0HhIuAu=E%85uy387u&1g18KfU;%_YBUk`Q9xQ+?4^lw7Jj68&42)p& an3x%%fEmI^767{lNdUrUVuk}I1_l6VG6~86 literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/modify_vertices.bmp b/setup/data/tools/bitmaps/modify_vertices.bmp new file mode 100644 index 0000000000000000000000000000000000000000..6299b01e72c0fda5c0f318a133fc6eb879bf8e85 GIT binary patch literal 316 zcmZ?rwP9oc11|;!1`P%V1_1^J27U$x21W)BusDbi;$~m~VO9nP1`uvwU|{(F|33o= zHZ*{E3=B-@fEf-TGR%xnz|0I5K=2vC0!VzY05TsWKrSET7qEV)dtiJfsDW@kOn{M* X8Kj@VE8W}!0=x| zf#JV_0mFX>2ZsLv0Sx~mA{hQBCNlglEM)lK*vRmI;zWl33l=c^U$~Ir|E5h0{|_Bv z_od`tgSVD2(u7{JNQjX!x_Ru|hn?s*KO`3=GKWmyMB;krAYgnV*r7QIM61 ziCvhHkx`XFl97>7S(Q;z8Ki(wOcmKkka{R);bY|E2C?}V`PsM`1(}!xg*lbPBpDP% zMP=0_870+Z86{<<7)8{P3;?NzVKzoKP61XXW<~)fCMIr1HYP?sCI%&t10)#~7#SrQ z7#L+47^D~#aOxKnVq{}tW8`9DVq#(BW@6-KVo+vOW{{Lr6A_h!>Q@FC0yhC>H;86q z#HnA3Q5mKm>Nm!o}>GYd0vGl9wxSw=Ai24z`MQCaLI8AJ;zDImba$H>SH zE=L$-89^FBnGazp5(`x)geM@t#>mge4K7C*)W8nMsUOKGI8#zgR78zY7M#&RSOEFc65QXyjXgGzf)Q7_9N1*!*Fm;^vE$_Osi;P%28FiVkWWo1|5)3DX9rk@R6@!WH6RVAX^qh(jA(7)dEsCR`y723Ac-f;hCng^`qEWx^HW zU|`jRB#1*BTo_3yRwi5_4hBqnm1P+fK-DEE?aNCuN~x(yF-ma=FmiJXGV(ET3JGy@ zb2D97nlavG%88VDwVvN!ZVEs&djBHE-!UBw-<`KvP!cf~0`V|>P zWI#n6$j^)*{c4P|3XIB7{ah&e`S=le8RmaUQ8lpJLCqbI`xzJ{MMT9Ip!)e4nL+Ls z;DorJiItHZ>H(O3DMnc(X+~vO_$e~TN-;7jGBB`#!jB&<{J8mrnbGvCiGm_Z85Vz% zp!No+p$GCUBO^a*{4s)CXkZgy_JbN2YRc-M<_4(jPzAL&Ky?obs1X8E2`xle-~u2) zMED`hL1jTy;U-a4WAbq8gvem(Koxbt$H6{ gurinu6jFlFFg`J|f&vgdMuretNfAQB_z<2T0Mj538vpr)krxzT1j`G87-0Pn^-%Mm J=0mMh0svmB5$pf} literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/patch_weld.bmp b/setup/data/tools/bitmaps/patch_weld.bmp new file mode 100644 index 0000000000000000000000000000000000000000..a0c99730243e412857b3d7e4976bc71caa97ac26 GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Lg37ljD!+(bV3=Iqn4F7Se!7iZ$1&UBw zNk~aaiAjk`5hTE%priy6U|>>GQc_e=VqgIAg_IZ=n3NQi6pcW7gjAG`Rg{zzg_M+y eL3~9eA+WfTpo)?cNC0FYNIQtFqy#b+!~y^b@D#8B literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/patch_wireframe.bmp b/setup/data/tools/bitmaps/patch_wireframe.bmp new file mode 100644 index 0000000000000000000000000000000000000000..9804274f144f6629015ccfae9a60d24dc560d995 GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Lg39MuT!+`?_82&T-$0|!mP)SLNNeK)T z1i+LMgCGM)L_v^&5hTJOD8MMlqy**)2q-Br3J5?17z7zXd?h6Y0YQ)kkP?Uqj9{*k Kk^+Q_l>`9f01~_#;E}= zVGITappUQ5YO1y7-T94LxhZt0W6Co7XSbN literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/redo.bmp b/setup/data/tools/bitmaps/redo.bmp new file mode 100644 index 0000000000000000000000000000000000000000..acce54e401de18b44d54b674e6fdd473f2b6e77f GIT binary patch literal 776 zcmZ?rGn3)> zTx`0K)c@^b_}jA^sxG|hu|!ZE!~aHxf6Wa4+8L0|$D$Gv lzx81CEnxNC41fDkZHK5qCXv+RG!sKTQ7Vyj(SXgs005?LzTN-; literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/refresh_models.bmp b/setup/data/tools/bitmaps/refresh_models.bmp new file mode 100644 index 0000000000000000000000000000000000000000..a6a0aa5d55f7f0589c989c486f343cfec6fcaa15 GIT binary patch literal 776 zcmZ?r85aLnpYzzI{S?SC zjsHO|>H5#m_n%?%fA0QQ#fy)^wJ=P3!?5B%!?OPpOFr7RoB_F{`9DKDI5Z~xXPEJy zVgCQ52^$gWXS`%s`=4R;fAJNcOdHRG)VKX-==sku@jpZVZ-%COMy>ndiv4;vGpzc} zu>L>8hW{$7UgFGKYc<*Gxu({{jB{%81a-?4>Z{u_oZ{~0#_XW0HfY~3}5 z!XpwzCt|y{F5i9}S>=C*{}Q!388(7dZu!r!`#;NuFK7zTxJtbzKqhbc&#>!1!|s2j sThF2?K;uex9A(({pJD5Nmi3>?x1B?i#pK#dJfybfRpgp0$Wjap00cv%z5oCK literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/scalelockx.bmp b/setup/data/tools/bitmaps/scalelockx.bmp new file mode 100644 index 0000000000000000000000000000000000000000..61363da20402f127cdf8042fabb5731217064d0d GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Lg2^{2qhW`xz|AR;z3h)RELIKDwkW~Uo qV8Do=m5r2*lo$n+V6>94u@Z={q-+GCp?sJ;j7BpD;s!>jb%FroW)sK& literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/scalelocky.bmp b/setup/data/tools/bitmaps/scalelocky.bmp new file mode 100644 index 0000000000000000000000000000000000000000..812394dbf423ea31e87bc98e26c2afcbc28d8400 GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Lg2^{2qhW`xz|AR;z3h)RELIKDwkW~Uo pV8AG#q@--5q=b()HU`Tp8z~!s)EO%&86(qhb3hD6nE6oa1OeY@6Sn{W literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/scalelockz.bmp b/setup/data/tools/bitmaps/scalelockz.bmp new file mode 100644 index 0000000000000000000000000000000000000000..5692e4a74fdf22cf5ad7bf381c97b2ea0003028d GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Lg2^{2qhW`xz|AR;z3h)RELIKDwkW~Uo pV8Do=m5q&+lo$n+l#P_Yw30Cz4Uzz>hpL0BM>7ZF21clLf&kSX6NUf) literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/select_mouseresize.bmp b/setup/data/tools/bitmaps/select_mouseresize.bmp new file mode 100644 index 0000000000000000000000000000000000000000..58da27f805defea740ab26bac51226f49efe3f05 GIT binary patch literal 200 zcmZ?rJ;4A0ehdr@8Vn2!0t^fc{0s~Xj0`Lg2?hp+YkUyQ#=yV;!UqlrO!OFk literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/select_mouserotate.bmp b/setup/data/tools/bitmaps/select_mouserotate.bmp new file mode 100644 index 0000000000000000000000000000000000000000..0139fd55cf70da5ae777eaed7033ec3e729f2039 GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Mbi3$b=h9i6s3>IKuU^sB#0K54)wCN3^6E{cM}#)5)^hJu11J;H(@J;op|NDO8y)EbaNK>+Yt8aDs{ literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/select_mousescale.bmp b/setup/data/tools/bitmaps/select_mousescale.bmp new file mode 100644 index 0000000000000000000000000000000000000000..7cac288119fdae8795eca9c793c2c08a6bc4f11e GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Lg2^{2qhW`u=4Gj$c|ASaK6yXpSgaRQY zB_%~cK|vv7V`Bvd1_ltVY;0_Rg*E|;D=8^Cn;07i3K$!kxS-N5P`!fdI0OI~ CWg7zk literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/select_mousetranslate.bmp b/setup/data/tools/bitmaps/select_mousetranslate.bmp new file mode 100644 index 0000000000000000000000000000000000000000..68374ffdd31ff0495b0f251a0c5ba1e6495c1977 GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Mbi3$b=hAVs!43Y!k0|yQ;{Ac*j(9qDp z(7?dJ@c;jRuv%gXK`0P5HU_hVjSU3_g#`tLL0n-&L19A>-&jysP)JG17$hm=;slli k(T0M8AaP-kRxlw5)(qkrgB61e0+}QzCE+r4GjMo{xdW*G=O;| z69SA33<8V{jDkXff{KCyf)H8|#%B}+$qEVxDKQEP3MeTu3W8`s0dyK64^a=(k8U1F G7K8x>I}ZK; literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/selection_makehollow.bmp b/setup/data/tools/bitmaps/selection_makehollow.bmp new file mode 100644 index 0000000000000000000000000000000000000000..1b62f2232652ce58a761c8f3d30534cdf6e23b88 GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Mbi3$b=h9i6s3>E+r4Gaek9ANm*@E^=0 nmtYhG0|7<`0Rcuv1_4H}fPes)5)>q#4>J#JydcO+U?&0qF#--q literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/selection_selectcompletetall.bmp b/setup/data/tools/bitmaps/selection_selectcompletetall.bmp new file mode 100644 index 0000000000000000000000000000000000000000..1f911e8c728ce13cfc8c7982dad0158aa507ba55 GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Lg37ljD!+`?_82&T-$EgCBgt4Kqv9YnR xF@zQ{Ha0Y1Fg6C$3dRf|aRUWo26R4DoEc0rK=m^)fceHuN~knU9LXMGV*sSB82JDI literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/selection_selectinside.bmp b/setup/data/tools/bitmaps/selection_selectinside.bmp new file mode 100644 index 0000000000000000000000000000000000000000..5670d3ad700284838f890bbeefab35194c60a0ee GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Lg37ljD!+`?_82&T-$EgCBgrOh^7#kZJ z8-oc$0|sMbLuO+`0|hv3z-SES8!$q|5qzk)A&3U)0~x`2A3EZ7&I6d7#yIOk%0p&4kCoO85lrVoq>S?gh68e|Nm!TVEE40- zLE%4xfx&+U2Z#R*0RjIRA|n1XBqsi6C@lQX(AfB&VdBL93=08UD;{ENpBnOiWB{tgOl^*nO|2tgH%>VPaxpWMmWs5!~F2 zARx%Z2BH{wz%q=C5~>W!U;#!35XGR#D96Ac3t~zzFo4oOAEN*l8@I498yhztqaZgY z6C0x-7n=YhD-)v#kFp}8G=r*~9HW$+9D|&=xSX08qa1@Qqqv;16eC1G8zVOlBa5IQ z$ia-zN%3@L=cY-WsV33kxkYQw$V-OQ(P?nQoR0P}4%*ZXw z$b+PxiJ4DOgi(ZuP?ckp zQkG+sR+bfq>SttRWM$%EWE6zO9}}wxD0-Nfm<2(!9CG|AgW?ht0gQ|={cLP(Oiavd zY^*G7Ai&B5=CQDWvIeWNs-Tx|AQ3b!r;KeL*UW}6UUsRPmA)W*mLN`_2=jEtg;jErocFaV|(LW43L6O*7I3nLFVBO9}b zu%MJUqnZk%G=riXD7i~XF~})HvLe(7h&~tz)i1=uD9p{s!ovAy6^I$HW9KPy_{;1UXSmfLqPLz@R86#V9AIswl-MrX~j}Cgr3V89AAl zm;@R5*!e^lnK*@oxw*M<>IcUXqp}nuqYQ&8BO|!H2bH3bazvOB6se&21C`M*4va&LRva&L$GyxUqY|JcdOst^t1yVI((~oQxj15zVi-xJgMdQ*36UU_w zCJs}Fi-xJgMdQ*36UU_wCJs}Fi-xJgMdQ*36UU_wCJs}Fi-xIFRs~fKFdl-&r4J?! zQwd5}j8dRv%LpnmBpDeQ!BrJ6Sb~Qcp7ubc3mY3FI7=}h+Gn5!g&d=TvJ9gPsD_l6 zVU$({l^qzN2`O+HAkLJ|BBL0%sR8mlDC>gC4h2SK28e!8DT2_?Cm;-Jtf1(Z5(hQYK=vy`n;cSN;t~u{ z{Q`{4Ot7+pn~{x)m608+8xelejB-jcjLNX^Q)B>@9f}MLY@qNHKnp)^0dTPZG6EKU zs^XxCQUgUjXy?4E|6XjhUsTuP*zq|R#R10RtB{;R6u11 zsObu7lYq+*SlIy=0O>}!A7KtE3!(})iK-fthg&B^22%&B2t*Zb5>+)O54TQ;45kiL z5r`_>B&upm9&Viw8B86hA`n%$NmSLCJlr}VGMGA0MIfqhlc=gOdAM~#WEdC#f9R22 literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/show_entities.bmp b/setup/data/tools/bitmaps/show_entities.bmp new file mode 100644 index 0000000000000000000000000000000000000000..9188bee6767d6f7765250d80d6280a3f34c5d6b9 GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Lg2^{2qhW`u<4F4G#8X6e>{|B*gD8wQx z2nGViU`h}~ySTWx2rvkWC@Cqq2nq^1DJiL_2nve0xVSihXeA{jqG?A#xG^C8ju1=0 FBmj)>7@hzC literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/splash.bmp b/setup/data/tools/bitmaps/splash.bmp new file mode 100644 index 0000000000000000000000000000000000000000..f9e7cc1dcdc0bda5f06e3fa07a5bda781ab8fb9c GIT binary patch literal 299934 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

V0byP~i+&W(mF(#n#Qv&ehh|-p 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 N4|stAcup3Qq5zY@{NDfo literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/texture_browser.bmp b/setup/data/tools/bitmaps/texture_browser.bmp new file mode 100644 index 0000000000000000000000000000000000000000..40c0c2c5036bdde2d526678c9653e57f760cf27f GIT binary patch literal 776 zcmZ?r9c3gUa(-n;>Al=tXQ#n_3Cx&)}}+ak zYHnd}Wo2b!V`FD$=jh<*?Ck97;u;$p+t=H-V#SKc$f&sZxRjKXjfc)6qd65R$jH^z zwW+Cj$s@Lrw4xZ78aJdxw+ll-L|$ij*bqlE-v`ho0*wqW@fgv zwOLtN+S=MWIy&N4@9N@`m6g@l)M#c7icMQPTm0&il9CDw3u|j@O-xM8&CRW?tnBP; z9UYxqUERFAy!`z9f`fy?BO+pBW0I1R($mv(b8?G{iptB&jf{*STC6}??3^5(+#p)~ c{epvoBO)W>Vq=q%k~7jXa&vQwi;5T+03S$PQUCw| literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/texture_lock.bmp b/setup/data/tools/bitmaps/texture_lock.bmp new file mode 100644 index 0000000000000000000000000000000000000000..bcc774245ffff30b744f4c24ba0d173ac0b6f779 GIT binary patch literal 774 zcmZ?rWn*Rl12YB&1`P%V1_1^J27U$x21W)6u=oWg1_mK+2nGu<{Ds=S?4IsZDdjX~rVLnI?J`7O_@&eq;a7)1=5Csq;AZ!o`lY)w4 zXh9c;DS(Q@wBxiFNdcx7OcA&_Ah$uJQAvn6fauNVF+9n0OMRn A8~^|S literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/textures_popup.bmp b/setup/data/tools/bitmaps/textures_popup.bmp new file mode 100644 index 0000000000000000000000000000000000000000..5333382f9af910c054a511f319fe6e18159bdc3e GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Lg2^{2s0|yxXGyG?0XlP*g|NlP&0|?_# zi!Q7L1`5VXN=nL1N+8!ffr21f*_l;P*jPzPIY>d+ INJ&Wv0CdzJNB{r; literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/undo.bmp b/setup/data/tools/bitmaps/undo.bmp new file mode 100644 index 0000000000000000000000000000000000000000..44edbbcde92a316dd6a82abce945aecdddaa6d0e GIT binary patch literal 776 zcmZ?rP(m zQ7-w{&hW2=;Xe`T|MoNd?PefG{hw(Je_If*A(xp`k`fN=gjwX{jIq78lnvkbsMedl*Q-#igV)EmTR_ z#ofI;EYwKBrKG&PEHuc#rM$enyflafOqUpegv-lal-$cf0!B*Z<>kd7Ys4Xx5&$j8 BFTnr+ literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/view_cameraupdate.bmp b/setup/data/tools/bitmaps/view_cameraupdate.bmp new file mode 100644 index 0000000000000000000000000000000000000000..dbb11956b0ea7953699d52f0438b8c64efe6bd9b GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Lg2^{2s0|yxXGyG?0XlP()U|?YQ|NlRT zVEB(iJ+iP82q+kVNF^mGt!!Xy3=&{qU|<5#U~$zTu)H#RXt0ukl9B>@S|~_P#l7q#icw9B%tC_UJjy7+{?>Lm6Vj+-OI~eKy*oYImj0AVvsH+B>=^AC4K+^ literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/view_change.bmp b/setup/data/tools/bitmaps/view_change.bmp new file mode 100644 index 0000000000000000000000000000000000000000..31b609e5c32416e7540f43e2eb7c96462dac7b4e GIT binary patch literal 126 zcmZ?rtzv)xI|c>@4F(1V0R{#Jeg*~xMg~T(gbf1&!x26R1`9ASF#Kou&(HwlFfcH% tA7Ef$0_$O5VCZ0AU_ZgYz`()4ASlAXz@@~%zyiVy3=CWh3=D!u`T&4I2(ADC literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/view_clipper.bmp b/setup/data/tools/bitmaps/view_clipper.bmp new file mode 100644 index 0000000000000000000000000000000000000000..4ef205669234b733b1b14bcf4ea91de3398a2d2d GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Lg2`uD)hW`u=3=9navB(i6B&Z|=RwpPZ zpa5bp3NkQ(Xa)ra5CRj7f(&3}n=*`>U^Jdja|rKG&P#E}82p9yX}8Uq0FA|Pe} literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/view_entity.bmp b/setup/data/tools/bitmaps/view_entity.bmp new file mode 100644 index 0000000000000000000000000000000000000000..851ec2c3dbdeb7b938433d4bf21e5f671f257d61 GIT binary patch literal 238 zcmZ?rea8R+Wef}q8Vn2!0t^fc{0s~Xj0`Lg2^{2qhW`u=4Gj$c|NqCK0=KZBkP-+e r3W7)_B}GAHV`F1uBP5!^fPn#-&&+_zXJBA3K$b`6L(PMjF9-twDDfB( literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/white.bmp b/setup/data/tools/bitmaps/white.bmp new file mode 100644 index 0000000000000000000000000000000000000000..cbf038f715159087594be490b88467f33ea4396b GIT binary patch literal 248 ucmZ?r{lNeMW(*7r8Vn2!98k>2AOV&*#K6EH#0|k<0R{$!|3e%wFaQ8w&%#Rp literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/window1.bmp b/setup/data/tools/bitmaps/window1.bmp new file mode 100644 index 0000000000000000000000000000000000000000..69444ae99a444f3713b0fdff049298f584bf1e01 GIT binary patch literal 572 zcmZ?rwP9ia11|;!1`P%V26-rEWMBb{e_~`{5aNblRt5$J5C%&yG%y@EaDbtKfq~)w z|NjsnB$CAi1u&rVnUqifLf#3ik0idMiwgsbi=&{Rh>MGhlZy+4?*if>^But^Bjh0p zoIn~u`oa3Z>RsUGIU@1Fxk#bwrmJf%`|qMa0F?1;KZ8bODKg>=yys z4|6Zbogn{!XpsFNnt{ayq#x`*C?9M;SY8mKA0hy^55h%r4@f;of&o4JjZuLC8W)Xk IY{0+(0PH7iu>b%7 literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/window2.bmp b/setup/data/tools/bitmaps/window2.bmp new file mode 100644 index 0000000000000000000000000000000000000000..dd890d24b9648d25ebcf9dc0fd0af5fa84c67708 GIT binary patch literal 568 zcmZ?rwP0cZ12+Z+1`P%V26-rEWMBb{e_~`{5aNblkO&BaB^VkQ8WNma24;`~0}vmKVSGVhh!~77Y>bmHC@5%PjHKSs7^)UT zgY*j<8!0I%DZ$M*gz!NQVFt+?3xk~oatMeoC@5%bXl!f@Gpa;sWM_XfWRq%6EjQcX1Jc$h(MO(eDU0 z*~!rb%wS*vnF7);A_9_NV1bA`K`4-Zu!NHfm~vrYfoMe157Gv;4`x5eJg~3}1CtU8 z0K3-(Ngj)TK{`SH1<@$#MZo4e3c~yk@h{jPPA(!~h~$1p7e_~s`=Rn+X%Q587i9B5 a`oVmVwYdF*?p|Y5V1UL&;~N_=FaQ7=U~UTl literal 0 HcmV?d00001 diff --git a/setup/data/tools/bitmaps/window4.bmp b/setup/data/tools/bitmaps/window4.bmp new file mode 100644 index 0000000000000000000000000000000000000000..78563e1759a08e4abccb93042cd199a3bf9b5d79 GIT binary patch literal 572 zcmZ?rwP9ia11|;!1`P%V26-rEWMBb{e_~`{5aNblRt5$J5C%&yG%y@EaDbtKfq~)w z|NjsnB$CAi1u&rVnUqifRNe`ui5$L&i;I(spr9bg43K^>-x0)fae?z)M8EyZn#nHt@1i^O^5dn)Z zu(&u1g6xAh2c#avastVN%mm4U%meFp0oxCe2T4NtVEqU_hz0Twhz6Mlq7i(kdts5l QV2lb3(70%PV*>^T0Bb*Ol>h($ literal 0 HcmV?d00001 diff --git a/setup/data/tools/gl/lighting_DBS_XY_Z_arbfp1.cg b/setup/data/tools/gl/lighting_DBS_XY_Z_arbfp1.cg new file mode 100644 index 00000000..f535dbb2 --- /dev/null +++ b/setup/data/tools/gl/lighting_DBS_XY_Z_arbfp1.cg @@ -0,0 +1,92 @@ +/// ============================================================================ +/* +Copyright (C) 2004 Robert Beckebans +Please see the file "AUTHORS" for a list of contributors + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +See the GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +*/ +/// ============================================================================ + +#include "utils.cg" + +struct cg_vertex2fragment +{ + float4 position : TEXCOORD0; + float4 tex_diffuse_bump : TEXCOORD1; + float4 tex_specular : TEXCOORD2; + float4 tex_atten_xy_z : TEXCOORD3; + + float3 tangent : TEXCOORD4; + float3 binormal : TEXCOORD5; + float3 normal : TEXCOORD6; +}; + +struct cg_fragment2final +{ + float4 color : COLOR; +}; + + +cg_fragment2final main(cg_vertex2fragment IN, + uniform sampler2D diffusemap, + uniform sampler2D bumpmap, + uniform sampler2D specularmap, + uniform sampler2D attenuationmap_xy, + uniform sampler2D attenuationmap_z, + uniform float3 view_origin, + uniform float3 light_origin, + uniform float3 light_color, + uniform float bump_scale, + uniform float specular_exponent) +{ + cg_fragment2final OUT; + + // construct object-space-to-tangent-space 3x3 matrix + float3x3 rotation = float3x3(IN.tangent, IN.binormal, IN.normal); + + // compute view direction in tangent space + float3 V = normalize(mul(rotation, view_origin - IN.position.xyz)); + + // compute light direction in tangent space + float3 L = normalize(mul(rotation, (light_origin - IN.position.xyz))); + + // compute half angle in tangent space + float3 H = normalize(L + V); + + // compute normal in tangent space from bumpmap + float3 T = CG_Expand(tex2D(bumpmap, IN.tex_diffuse_bump.zw).xyz); + T.z *= bump_scale; + float3 N = normalize(T); + + // compute the diffuse term + float4 diffuse = tex2D(diffusemap, IN.tex_diffuse_bump.xy); + diffuse.rgb *= light_color * saturate(dot(N, L)); + + // compute the specular term + float3 specular = tex2D(specularmap, IN.tex_specular.xy).rgb * light_color * pow(saturate(dot(N, H)), specular_exponent); + + // compute attenuation + float3 attenuation_xy = tex2Dproj(attenuationmap_xy, float3(IN.tex_atten_xy_z.x, IN.tex_atten_xy_z.y, IN.tex_atten_xy_z.w)).rgb; + float3 attenuation_z = tex2D(attenuationmap_z, float2(IN.tex_atten_xy_z.z, 0)).rgb; + + // compute final color + OUT.color.rgba = diffuse; + OUT.color.rgb += specular; + OUT.color.rgb *= attenuation_xy; + OUT.color.rgb *= attenuation_z; + + return OUT; +} diff --git a/setup/data/tools/gl/lighting_DBS_XY_Z_arbvp1.cg b/setup/data/tools/gl/lighting_DBS_XY_Z_arbvp1.cg new file mode 100644 index 00000000..59a6fc73 --- /dev/null +++ b/setup/data/tools/gl/lighting_DBS_XY_Z_arbvp1.cg @@ -0,0 +1,78 @@ +/// ============================================================================ +/* +Copyright (C) 2004 Robert Beckebans +Please see the file "AUTHORS" for a list of contributors + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +See the GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +*/ +/// ============================================================================ + + +struct cg_app2vertex +{ + float4 position : POSITION; + float4 tex0 : ATTR8; + + float3 tangent : ATTR9; + float3 binormal : ATTR10; + float3 normal : ATTR11; +}; + +struct cg_vertex2fragment +{ + float4 hposition : POSITION; + + float4 position : TEXCOORD0; + float4 tex_diffuse_bump : TEXCOORD1; + float4 tex_specular : TEXCOORD2; + float4 tex_atten_xy_z : TEXCOORD3; + + float3 tangent : TEXCOORD4; + float3 binormal : TEXCOORD5; + float3 normal : TEXCOORD6; +}; + + + +cg_vertex2fragment main(cg_app2vertex IN) +{ + cg_vertex2fragment OUT; + + // transform vertex position into homogenous clip-space + OUT.hposition = mul(glstate.matrix.mvp, IN.position); + + // assign position in object space + OUT.position = IN.position; + + // transform texcoords + OUT.tex_diffuse_bump.xy = mul(glstate.matrix.texture[0], IN.tex0).xy; + + // transform texcoords + OUT.tex_diffuse_bump.zw = mul(glstate.matrix.texture[1], IN.tex0).xy; + + // transform texcoords + OUT.tex_specular = mul(glstate.matrix.texture[2], IN.tex0); + + // transform vertex position into light space + OUT.tex_atten_xy_z = mul(glstate.matrix.texture[3], IN.position); + + // assign tangent space vectors + OUT.tangent = IN.tangent; + OUT.binormal = IN.binormal; + OUT.normal = IN.normal; + + return OUT; +} diff --git a/setup/data/tools/gl/lighting_DBS_omni_fp.glp b/setup/data/tools/gl/lighting_DBS_omni_fp.glp new file mode 100644 index 00000000..88dab8d3 --- /dev/null +++ b/setup/data/tools/gl/lighting_DBS_omni_fp.glp @@ -0,0 +1,86 @@ +!!ARBfp1.0 +# cgc version 1.3.0001, build date Aug 4 2004 10:01:10 +# command line args: -profile arbfp1 +# source file: ..\..\setup\data\tools\gl\lighting_DBS_XY_Z_arbfp1.cg +# source file: ..\..\setup\data\tools\gl/utils.cg +#vendor NVIDIA Corporation +#version 1.0.02 +#profile arbfp1 +#program main +#semantic main.diffusemap +#semantic main.bumpmap +#semantic main.specularmap +#semantic main.attenuationmap_xy +#semantic main.attenuationmap_z +#semantic main.view_origin +#semantic main.light_origin +#semantic main.light_color +#semantic main.bump_scale +#semantic main.specular_exponent +#var float4 IN.position : $vin.TEX0 : TEX0 : 0 : 1 +#var float4 IN.tex_diffuse_bump : $vin.TEX1 : TEX1 : 0 : 1 +#var float4 IN.tex_specular : $vin.TEX2 : TEX2 : 0 : 1 +#var float4 IN.tex_atten_xy_z : $vin.TEX3 : TEX3 : 0 : 1 +#var float3 IN.tangent : $vin.TEX4 : TEX4 : 0 : 1 +#var float3 IN.binormal : $vin.TEX5 : TEX5 : 0 : 1 +#var float3 IN.normal : $vin.TEX6 : TEX6 : 0 : 1 +#var sampler2D diffusemap : : texunit 0 : 1 : 1 +#var sampler2D bumpmap : : texunit 1 : 2 : 1 +#var sampler2D specularmap : : texunit 2 : 3 : 1 +#var sampler2D attenuationmap_xy : : texunit 3 : 4 : 1 +#var sampler2D attenuationmap_z : : texunit 4 : 5 : 1 +#var float3 view_origin : : c[4] : 6 : 1 +#var float3 light_origin : : c[2] : 7 : 1 +#var float3 light_color : : c[3] : 8 : 1 +#var float bump_scale : : c[1] : 9 : 1 +#var float specular_exponent : : c[5] : 10 : 1 +#var float4 main.color : $vout.COL : COL : -1 : 1 +#const c[0] = 0.5 2 0 +PARAM c[6] = { { 0.5, 2, 0 }, + program.local[1..5] }; +TEMP R0; +TEMP R1; +TEMP R2; +ADD R1.xyz, -fragment.texcoord[0], c[2]; +DP3 R0.z, fragment.texcoord[6], R1; +DP3 R0.x, fragment.texcoord[4], R1; +DP3 R0.y, fragment.texcoord[5], R1; +ADD R1.xyz, -fragment.texcoord[0], c[4]; +DP3 R0.w, R0, R0; +DP3 R2.z, fragment.texcoord[6], R1; +DP3 R2.x, fragment.texcoord[4], R1; +DP3 R2.y, fragment.texcoord[5], R1; +RSQ R0.w, R0.w; +MUL R1.xyz, R0.w, R0; +DP3 R1.w, R2, R2; +RSQ R0.w, R1.w; +MUL R2.xyz, R0.w, R2; +ADD R2.xyz, R1, R2; +DP3 R0.w, R2, R2; +RSQ R2.w, R0.w; +TEX R0.xyz, fragment.texcoord[1].zwzw, texture[1], 2D; +ADD R0.xyz, R0, -c[0].x; +MUL R0.xyz, R0, c[0].y; +MUL R0.z, R0, c[1].x; +DP3 R1.w, R0, R0; +RSQ R0.w, R1.w; +MUL R0.xyz, R0.w, R0; +MUL R2.xyz, R2.w, R2; +DP3_SAT R0.w, R0, R2; +DP3_SAT R0.x, R0, R1; +TEX R2.xyz, fragment.texcoord[2], texture[2], 2D; +MUL R1.xyz, R2, c[3]; +POW R0.w, R0.w, c[5].x; +MUL R2.xyz, R1, R0.w; +MUL R1.xyz, R0.x, c[3]; +TEX R0, fragment.texcoord[1], texture[0], 2D; +MAD R2.xyz, R0, R1, R2; +TXP R0.xyz, fragment.texcoord[3], texture[3], 2D; +MOV R1.y, c[0].z; +MOV R1.x, fragment.texcoord[3].z; +TEX R1.xyz, R1, texture[4], 2D; +MUL R0.xyz, R2, R0; +MUL result.color.xyz, R0, R1; +MOV result.color.w, R0; +END +# 41 instructions, 3 R-regs diff --git a/setup/data/tools/gl/lighting_DBS_omni_fp.glsl b/setup/data/tools/gl/lighting_DBS_omni_fp.glsl new file mode 100644 index 00000000..7f80fea2 --- /dev/null +++ b/setup/data/tools/gl/lighting_DBS_omni_fp.glsl @@ -0,0 +1,73 @@ +/// ============================================================================ +/* +Copyright (C) 2004 Robert Beckebans +Please see the file "CONTRIBUTORS" for a list of contributors + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU Lesser General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +See the GNU Lesser General Public License for more details. + +You should have received a copy of the GNU Lesser General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +*/ +/// ============================================================================ + +uniform sampler2D u_diffusemap; +uniform sampler2D u_bumpmap; +uniform sampler2D u_specularmap; +uniform sampler2D u_attenuationmap_xy; +uniform sampler2D u_attenuationmap_z; +uniform vec3 u_view_origin; +uniform vec3 u_light_origin; +uniform vec3 u_light_color; +uniform float u_bump_scale; +uniform float u_specular_exponent; + +varying vec3 var_vertex; +varying vec4 var_tex_diffuse_bump; +varying vec2 var_tex_specular; +varying vec4 var_tex_atten_xy_z; +varying mat3 var_mat_os2ts; + +void main() +{ + // compute view direction in tangent space + vec3 V = normalize(var_mat_os2ts * (u_view_origin - var_vertex)); + + // compute light direction in tangent space + vec3 L = normalize(var_mat_os2ts * (u_light_origin - var_vertex)); + + // compute half angle in tangent space + vec3 H = normalize(L + V); + + // compute normal in tangent space from bumpmap + vec3 N = 2.0 * (texture2D(u_bumpmap, var_tex_diffuse_bump.pq).xyz - 0.5); + N.z *= u_bump_scale; + N = normalize(N); + + // compute the diffuse term + vec4 diffuse = texture2D(u_diffusemap, var_tex_diffuse_bump.st); + diffuse.rgb *= u_light_color * clamp(dot(N, L), 0.0, 1.0); + + // compute the specular term + vec3 specular = texture2D(u_specularmap, var_tex_specular).rgb * u_light_color * pow(clamp(dot(N, H), 0.0, 1.0), u_specular_exponent); + + // compute attenuation + vec3 attenuation_xy = texture2DProj(u_attenuationmap_xy, vec3(var_tex_atten_xy_z.x, var_tex_atten_xy_z.y, var_tex_atten_xy_z.w)).rgb; + vec3 attenuation_z = texture2D(u_attenuationmap_z, vec2(var_tex_atten_xy_z.z, 0)).rgb; + + // compute final color + gl_FragColor.rgba = diffuse; + gl_FragColor.rgb += specular; + gl_FragColor.rgb *= attenuation_xy; + gl_FragColor.rgb *= attenuation_z; +} + diff --git a/setup/data/tools/gl/lighting_DBS_omni_vp.glp b/setup/data/tools/gl/lighting_DBS_omni_vp.glp new file mode 100644 index 00000000..b4472d70 --- /dev/null +++ b/setup/data/tools/gl/lighting_DBS_omni_vp.glp @@ -0,0 +1,410 @@ +!!ARBvp1.0 +# cgc version 1.3.0001, build date Aug 4 2004 10:01:10 +# command line args: -profile arbvp1 +# source file: ..\..\setup\data\tools\gl\lighting_DBS_XY_Z_arbvp1.cg +#vendor NVIDIA Corporation +#version 1.0.02 +#profile arbvp1 +#program main +#semantic glstate : STATE +#var float4 glstate.material.ambient : STATE.MATERIAL.AMBIENT : : -1 : 0 +#var float4 glstate.material.diffuse : STATE.MATERIAL.DIFFUSE : : -1 : 0 +#var float4 glstate.material.specular : STATE.MATERIAL.SPECULAR : : -1 : 0 +#var float4 glstate.material.emission : STATE.MATERIAL.EMISSION : : -1 : 0 +#var float4 glstate.material.shininess : STATE.MATERIAL.SHININESS : : -1 : 0 +#var float4 glstate.material.front.ambient : STATE.MATERIAL.FRONT.AMBIENT : : -1 : 0 +#var float4 glstate.material.front.diffuse : STATE.MATERIAL.FRONT.DIFFUSE : : -1 : 0 +#var float4 glstate.material.front.specular : STATE.MATERIAL.FRONT.SPECULAR : : -1 : 0 +#var float4 glstate.material.front.emission : STATE.MATERIAL.FRONT.EMISSION : : -1 : 0 +#var float4 glstate.material.front.shininess : STATE.MATERIAL.FRONT.SHININESS : : -1 : 0 +#var float4 glstate.material.back.ambient : STATE.MATERIAL.BACK.AMBIENT : : -1 : 0 +#var float4 glstate.material.back.diffuse : STATE.MATERIAL.BACK.DIFFUSE : : -1 : 0 +#var float4 glstate.material.back.specular : STATE.MATERIAL.BACK.SPECULAR : : -1 : 0 +#var float4 glstate.material.back.emission : STATE.MATERIAL.BACK.EMISSION : : -1 : 0 +#var float4 glstate.material.back.shininess : STATE.MATERIAL.BACK.SHININESS : : -1 : 0 +#var float4 glstate.light[0].ambient : STATE.LIGHT[0].AMBIENT : : -1 : 0 +#var float4 glstate.light[0].diffuse : STATE.LIGHT[0].DIFFUSE : : -1 : 0 +#var float4 glstate.light[0].specular : STATE.LIGHT[0].SPECULAR : : -1 : 0 +#var float4 glstate.light[0].position : STATE.LIGHT[0].POSITION : : -1 : 0 +#var float4 glstate.light[0].attenuation : STATE.LIGHT[0].ATTENUATION : : -1 : 0 +#var float4 glstate.light[0].spot.direction : STATE.LIGHT[0].SPOT.DIRECTION : : -1 : 0 +#var float4 glstate.light[0].half : STATE.LIGHT[0].HALF : : -1 : 0 +#var float4 glstate.light[1].ambient : STATE.LIGHT[1].AMBIENT : : -1 : 0 +#var float4 glstate.light[1].diffuse : STATE.LIGHT[1].DIFFUSE : : -1 : 0 +#var float4 glstate.light[1].specular : STATE.LIGHT[1].SPECULAR : : -1 : 0 +#var float4 glstate.light[1].position : STATE.LIGHT[1].POSITION : : -1 : 0 +#var float4 glstate.light[1].attenuation : STATE.LIGHT[1].ATTENUATION : : -1 : 0 +#var float4 glstate.light[1].spot.direction : STATE.LIGHT[1].SPOT.DIRECTION : : -1 : 0 +#var float4 glstate.light[1].half : STATE.LIGHT[1].HALF : : -1 : 0 +#var float4 glstate.light[2].ambient : STATE.LIGHT[2].AMBIENT : : -1 : 0 +#var float4 glstate.light[2].diffuse : STATE.LIGHT[2].DIFFUSE : : -1 : 0 +#var float4 glstate.light[2].specular : STATE.LIGHT[2].SPECULAR : : -1 : 0 +#var float4 glstate.light[2].position : STATE.LIGHT[2].POSITION : : -1 : 0 +#var float4 glstate.light[2].attenuation : STATE.LIGHT[2].ATTENUATION : : -1 : 0 +#var float4 glstate.light[2].spot.direction : STATE.LIGHT[2].SPOT.DIRECTION : : -1 : 0 +#var float4 glstate.light[2].half : STATE.LIGHT[2].HALF : : -1 : 0 +#var float4 glstate.light[3].ambient : STATE.LIGHT[3].AMBIENT : : -1 : 0 +#var float4 glstate.light[3].diffuse : STATE.LIGHT[3].DIFFUSE : : -1 : 0 +#var float4 glstate.light[3].specular : STATE.LIGHT[3].SPECULAR : : -1 : 0 +#var float4 glstate.light[3].position : STATE.LIGHT[3].POSITION : : -1 : 0 +#var float4 glstate.light[3].attenuation : STATE.LIGHT[3].ATTENUATION : : -1 : 0 +#var float4 glstate.light[3].spot.direction : STATE.LIGHT[3].SPOT.DIRECTION : : -1 : 0 +#var float4 glstate.light[3].half : STATE.LIGHT[3].HALF : : -1 : 0 +#var float4 glstate.light[4].ambient : STATE.LIGHT[4].AMBIENT : : -1 : 0 +#var float4 glstate.light[4].diffuse : STATE.LIGHT[4].DIFFUSE : : -1 : 0 +#var float4 glstate.light[4].specular : STATE.LIGHT[4].SPECULAR : : -1 : 0 +#var float4 glstate.light[4].position : STATE.LIGHT[4].POSITION : : -1 : 0 +#var float4 glstate.light[4].attenuation : STATE.LIGHT[4].ATTENUATION : : -1 : 0 +#var float4 glstate.light[4].spot.direction : STATE.LIGHT[4].SPOT.DIRECTION : : -1 : 0 +#var float4 glstate.light[4].half : STATE.LIGHT[4].HALF : : -1 : 0 +#var float4 glstate.light[5].ambient : STATE.LIGHT[5].AMBIENT : : -1 : 0 +#var float4 glstate.light[5].diffuse : STATE.LIGHT[5].DIFFUSE : : -1 : 0 +#var float4 glstate.light[5].specular : STATE.LIGHT[5].SPECULAR : : -1 : 0 +#var float4 glstate.light[5].position : STATE.LIGHT[5].POSITION : : -1 : 0 +#var float4 glstate.light[5].attenuation : STATE.LIGHT[5].ATTENUATION : : -1 : 0 +#var float4 glstate.light[5].spot.direction : STATE.LIGHT[5].SPOT.DIRECTION : : -1 : 0 +#var float4 glstate.light[5].half : STATE.LIGHT[5].HALF : : -1 : 0 +#var float4 glstate.light[6].ambient : STATE.LIGHT[6].AMBIENT : : -1 : 0 +#var float4 glstate.light[6].diffuse : STATE.LIGHT[6].DIFFUSE : : -1 : 0 +#var float4 glstate.light[6].specular : STATE.LIGHT[6].SPECULAR : : -1 : 0 +#var float4 glstate.light[6].position : STATE.LIGHT[6].POSITION : : -1 : 0 +#var float4 glstate.light[6].attenuation : STATE.LIGHT[6].ATTENUATION : : -1 : 0 +#var float4 glstate.light[6].spot.direction : STATE.LIGHT[6].SPOT.DIRECTION : : -1 : 0 +#var float4 glstate.light[6].half : STATE.LIGHT[6].HALF : : -1 : 0 +#var float4 glstate.light[7].ambient : STATE.LIGHT[7].AMBIENT : : -1 : 0 +#var float4 glstate.light[7].diffuse : STATE.LIGHT[7].DIFFUSE : : -1 : 0 +#var float4 glstate.light[7].specular : STATE.LIGHT[7].SPECULAR : : -1 : 0 +#var float4 glstate.light[7].position : STATE.LIGHT[7].POSITION : : -1 : 0 +#var float4 glstate.light[7].attenuation : STATE.LIGHT[7].ATTENUATION : : -1 : 0 +#var float4 glstate.light[7].spot.direction : STATE.LIGHT[7].SPOT.DIRECTION : : -1 : 0 +#var float4 glstate.light[7].half : STATE.LIGHT[7].HALF : : -1 : 0 +#var float4 glstate.lightmodel.ambient : STATE.LIGHTMODEL.AMBIENT : : -1 : 0 +#var float4 glstate.lightmodel.scenecolor : STATE.LIGHTMODEL.SCENECOLOR : : -1 : 0 +#var float4 glstate.lightmodel.front.scenecolor : STATE.LIGHTMODEL.FRONT.SCENECOLOR : : -1 : 0 +#var float4 glstate.lightmodel.back.scenecolor : STATE.LIGHTMODEL.BACK.SCENECOLOR : : -1 : 0 +#var float4 glstate.lightprod[0].ambient : STATE.LIGHTPROD[0].AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[0].diffuse : STATE.LIGHTPROD[0].DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[0].specular : STATE.LIGHTPROD[0].SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[0].front.ambient : STATE.LIGHTPROD[0].FRONT.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[0].front.diffuse : STATE.LIGHTPROD[0].FRONT.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[0].front.specular : STATE.LIGHTPROD[0].FRONT.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[0].back.ambient : STATE.LIGHTPROD[0].BACK.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[0].back.diffuse : STATE.LIGHTPROD[0].BACK.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[0].back.specular : STATE.LIGHTPROD[0].BACK.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[1].ambient : STATE.LIGHTPROD[1].AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[1].diffuse : STATE.LIGHTPROD[1].DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[1].specular : STATE.LIGHTPROD[1].SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[1].front.ambient : STATE.LIGHTPROD[1].FRONT.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[1].front.diffuse : STATE.LIGHTPROD[1].FRONT.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[1].front.specular : STATE.LIGHTPROD[1].FRONT.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[1].back.ambient : STATE.LIGHTPROD[1].BACK.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[1].back.diffuse : STATE.LIGHTPROD[1].BACK.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[1].back.specular : STATE.LIGHTPROD[1].BACK.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[2].ambient : STATE.LIGHTPROD[2].AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[2].diffuse : STATE.LIGHTPROD[2].DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[2].specular : STATE.LIGHTPROD[2].SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[2].front.ambient : STATE.LIGHTPROD[2].FRONT.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[2].front.diffuse : STATE.LIGHTPROD[2].FRONT.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[2].front.specular : STATE.LIGHTPROD[2].FRONT.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[2].back.ambient : STATE.LIGHTPROD[2].BACK.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[2].back.diffuse : STATE.LIGHTPROD[2].BACK.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[2].back.specular : STATE.LIGHTPROD[2].BACK.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[3].ambient : STATE.LIGHTPROD[3].AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[3].diffuse : STATE.LIGHTPROD[3].DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[3].specular : STATE.LIGHTPROD[3].SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[3].front.ambient : STATE.LIGHTPROD[3].FRONT.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[3].front.diffuse : STATE.LIGHTPROD[3].FRONT.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[3].front.specular : STATE.LIGHTPROD[3].FRONT.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[3].back.ambient : STATE.LIGHTPROD[3].BACK.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[3].back.diffuse : STATE.LIGHTPROD[3].BACK.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[3].back.specular : STATE.LIGHTPROD[3].BACK.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[4].ambient : STATE.LIGHTPROD[4].AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[4].diffuse : STATE.LIGHTPROD[4].DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[4].specular : STATE.LIGHTPROD[4].SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[4].front.ambient : STATE.LIGHTPROD[4].FRONT.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[4].front.diffuse : STATE.LIGHTPROD[4].FRONT.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[4].front.specular : STATE.LIGHTPROD[4].FRONT.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[4].back.ambient : STATE.LIGHTPROD[4].BACK.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[4].back.diffuse : STATE.LIGHTPROD[4].BACK.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[4].back.specular : STATE.LIGHTPROD[4].BACK.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[5].ambient : STATE.LIGHTPROD[5].AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[5].diffuse : STATE.LIGHTPROD[5].DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[5].specular : STATE.LIGHTPROD[5].SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[5].front.ambient : STATE.LIGHTPROD[5].FRONT.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[5].front.diffuse : STATE.LIGHTPROD[5].FRONT.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[5].front.specular : STATE.LIGHTPROD[5].FRONT.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[5].back.ambient : STATE.LIGHTPROD[5].BACK.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[5].back.diffuse : STATE.LIGHTPROD[5].BACK.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[5].back.specular : STATE.LIGHTPROD[5].BACK.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[6].ambient : STATE.LIGHTPROD[6].AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[6].diffuse : STATE.LIGHTPROD[6].DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[6].specular : STATE.LIGHTPROD[6].SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[6].front.ambient : STATE.LIGHTPROD[6].FRONT.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[6].front.diffuse : STATE.LIGHTPROD[6].FRONT.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[6].front.specular : STATE.LIGHTPROD[6].FRONT.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[6].back.ambient : STATE.LIGHTPROD[6].BACK.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[6].back.diffuse : STATE.LIGHTPROD[6].BACK.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[6].back.specular : STATE.LIGHTPROD[6].BACK.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[7].ambient : STATE.LIGHTPROD[7].AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[7].diffuse : STATE.LIGHTPROD[7].DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[7].specular : STATE.LIGHTPROD[7].SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[7].front.ambient : STATE.LIGHTPROD[7].FRONT.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[7].front.diffuse : STATE.LIGHTPROD[7].FRONT.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[7].front.specular : STATE.LIGHTPROD[7].FRONT.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[7].back.ambient : STATE.LIGHTPROD[7].BACK.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[7].back.diffuse : STATE.LIGHTPROD[7].BACK.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[7].back.specular : STATE.LIGHTPROD[7].BACK.SPECULAR : : -1 : 0 +#var float4 glstate.texgen[0].eye.s : STATE.TEXGEN[0].EYE.S : : -1 : 0 +#var float4 glstate.texgen[0].eye.t : STATE.TEXGEN[0].EYE.T : : -1 : 0 +#var float4 glstate.texgen[0].eye.r : STATE.TEXGEN[0].EYE.R : : -1 : 0 +#var float4 glstate.texgen[0].eye.q : STATE.TEXGEN[0].EYE.Q : : -1 : 0 +#var float4 glstate.texgen[0].object.s : STATE.TEXGEN[0].OBJECT.S : : -1 : 0 +#var float4 glstate.texgen[0].object.t : STATE.TEXGEN[0].OBJECT.T : : -1 : 0 +#var float4 glstate.texgen[0].object.r : STATE.TEXGEN[0].OBJECT.R : : -1 : 0 +#var float4 glstate.texgen[0].object.q : STATE.TEXGEN[0].OBJECT.Q : : -1 : 0 +#var float4 glstate.texgen[1].eye.s : STATE.TEXGEN[1].EYE.S : : -1 : 0 +#var float4 glstate.texgen[1].eye.t : STATE.TEXGEN[1].EYE.T : : -1 : 0 +#var float4 glstate.texgen[1].eye.r : STATE.TEXGEN[1].EYE.R : : -1 : 0 +#var float4 glstate.texgen[1].eye.q : STATE.TEXGEN[1].EYE.Q : : -1 : 0 +#var float4 glstate.texgen[1].object.s : STATE.TEXGEN[1].OBJECT.S : : -1 : 0 +#var float4 glstate.texgen[1].object.t : STATE.TEXGEN[1].OBJECT.T : : -1 : 0 +#var float4 glstate.texgen[1].object.r : STATE.TEXGEN[1].OBJECT.R : : -1 : 0 +#var float4 glstate.texgen[1].object.q : STATE.TEXGEN[1].OBJECT.Q : : -1 : 0 +#var float4 glstate.texgen[2].eye.s : STATE.TEXGEN[2].EYE.S : : -1 : 0 +#var float4 glstate.texgen[2].eye.t : STATE.TEXGEN[2].EYE.T : : -1 : 0 +#var float4 glstate.texgen[2].eye.r : STATE.TEXGEN[2].EYE.R : : -1 : 0 +#var float4 glstate.texgen[2].eye.q : STATE.TEXGEN[2].EYE.Q : : -1 : 0 +#var float4 glstate.texgen[2].object.s : STATE.TEXGEN[2].OBJECT.S : : -1 : 0 +#var float4 glstate.texgen[2].object.t : STATE.TEXGEN[2].OBJECT.T : : -1 : 0 +#var float4 glstate.texgen[2].object.r : STATE.TEXGEN[2].OBJECT.R : : -1 : 0 +#var float4 glstate.texgen[2].object.q : STATE.TEXGEN[2].OBJECT.Q : : -1 : 0 +#var float4 glstate.texgen[3].eye.s : STATE.TEXGEN[3].EYE.S : : -1 : 0 +#var float4 glstate.texgen[3].eye.t : STATE.TEXGEN[3].EYE.T : : -1 : 0 +#var float4 glstate.texgen[3].eye.r : STATE.TEXGEN[3].EYE.R : : -1 : 0 +#var float4 glstate.texgen[3].eye.q : STATE.TEXGEN[3].EYE.Q : : -1 : 0 +#var float4 glstate.texgen[3].object.s : STATE.TEXGEN[3].OBJECT.S : : -1 : 0 +#var float4 glstate.texgen[3].object.t : STATE.TEXGEN[3].OBJECT.T : : -1 : 0 +#var float4 glstate.texgen[3].object.r : STATE.TEXGEN[3].OBJECT.R : : -1 : 0 +#var float4 glstate.texgen[3].object.q : STATE.TEXGEN[3].OBJECT.Q : : -1 : 0 +#var float4 glstate.texgen[4].eye.s : STATE.TEXGEN[4].EYE.S : : -1 : 0 +#var float4 glstate.texgen[4].eye.t : STATE.TEXGEN[4].EYE.T : : -1 : 0 +#var float4 glstate.texgen[4].eye.r : STATE.TEXGEN[4].EYE.R : : -1 : 0 +#var float4 glstate.texgen[4].eye.q : STATE.TEXGEN[4].EYE.Q : : -1 : 0 +#var float4 glstate.texgen[4].object.s : STATE.TEXGEN[4].OBJECT.S : : -1 : 0 +#var float4 glstate.texgen[4].object.t : STATE.TEXGEN[4].OBJECT.T : : -1 : 0 +#var float4 glstate.texgen[4].object.r : STATE.TEXGEN[4].OBJECT.R : : -1 : 0 +#var float4 glstate.texgen[4].object.q : STATE.TEXGEN[4].OBJECT.Q : : -1 : 0 +#var float4 glstate.texgen[5].eye.s : STATE.TEXGEN[5].EYE.S : : -1 : 0 +#var float4 glstate.texgen[5].eye.t : STATE.TEXGEN[5].EYE.T : : -1 : 0 +#var float4 glstate.texgen[5].eye.r : STATE.TEXGEN[5].EYE.R : : -1 : 0 +#var float4 glstate.texgen[5].eye.q : STATE.TEXGEN[5].EYE.Q : : -1 : 0 +#var float4 glstate.texgen[5].object.s : STATE.TEXGEN[5].OBJECT.S : : -1 : 0 +#var float4 glstate.texgen[5].object.t : STATE.TEXGEN[5].OBJECT.T : : -1 : 0 +#var float4 glstate.texgen[5].object.r : STATE.TEXGEN[5].OBJECT.R : : -1 : 0 +#var float4 glstate.texgen[5].object.q : STATE.TEXGEN[5].OBJECT.Q : : -1 : 0 +#var float4 glstate.texgen[6].eye.s : STATE.TEXGEN[6].EYE.S : : -1 : 0 +#var float4 glstate.texgen[6].eye.t : STATE.TEXGEN[6].EYE.T : : -1 : 0 +#var float4 glstate.texgen[6].eye.r : STATE.TEXGEN[6].EYE.R : : -1 : 0 +#var float4 glstate.texgen[6].eye.q : STATE.TEXGEN[6].EYE.Q : : -1 : 0 +#var float4 glstate.texgen[6].object.s : STATE.TEXGEN[6].OBJECT.S : : -1 : 0 +#var float4 glstate.texgen[6].object.t : STATE.TEXGEN[6].OBJECT.T : : -1 : 0 +#var float4 glstate.texgen[6].object.r : STATE.TEXGEN[6].OBJECT.R : : -1 : 0 +#var float4 glstate.texgen[6].object.q : STATE.TEXGEN[6].OBJECT.Q : : -1 : 0 +#var float4 glstate.texgen[7].eye.s : STATE.TEXGEN[7].EYE.S : : -1 : 0 +#var float4 glstate.texgen[7].eye.t : STATE.TEXGEN[7].EYE.T : : -1 : 0 +#var float4 glstate.texgen[7].eye.r : STATE.TEXGEN[7].EYE.R : : -1 : 0 +#var float4 glstate.texgen[7].eye.q : STATE.TEXGEN[7].EYE.Q : : -1 : 0 +#var float4 glstate.texgen[7].object.s : STATE.TEXGEN[7].OBJECT.S : : -1 : 0 +#var float4 glstate.texgen[7].object.t : STATE.TEXGEN[7].OBJECT.T : : -1 : 0 +#var float4 glstate.texgen[7].object.r : STATE.TEXGEN[7].OBJECT.R : : -1 : 0 +#var float4 glstate.texgen[7].object.q : STATE.TEXGEN[7].OBJECT.Q : : -1 : 0 +#var float4 glstate.fog.color : STATE.FOG.COLOR : : -1 : 0 +#var float4 glstate.fog.params : STATE.FOG.PARAMS : : -1 : 0 +#var float4 glstate.clip[0].plane : STATE.CLIP[0].PLANE : : -1 : 0 +#var float4 glstate.clip[1].plane : STATE.CLIP[1].PLANE : : -1 : 0 +#var float4 glstate.clip[2].plane : STATE.CLIP[2].PLANE : : -1 : 0 +#var float4 glstate.clip[3].plane : STATE.CLIP[3].PLANE : : -1 : 0 +#var float4 glstate.clip[4].plane : STATE.CLIP[4].PLANE : : -1 : 0 +#var float4 glstate.clip[5].plane : STATE.CLIP[5].PLANE : : -1 : 0 +#var float4 glstate.clip[6].plane : STATE.CLIP[6].PLANE : : -1 : 0 +#var float4 glstate.clip[7].plane : STATE.CLIP[7].PLANE : : -1 : 0 +#var float glstate.point.size : STATE.POINT.SIZE : : -1 : 0 +#var float glstate.point.attenuation : STATE.POINT.ATTENUATION : : -1 : 0 +#var float4x4 glstate.matrix.modelview[0] : STATE.MATRIX.MODELVIEW[0] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.modelview[1] : STATE.MATRIX.MODELVIEW[1] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.modelview[2] : STATE.MATRIX.MODELVIEW[2] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.modelview[3] : STATE.MATRIX.MODELVIEW[3] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.modelview[4] : STATE.MATRIX.MODELVIEW[4] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.modelview[5] : STATE.MATRIX.MODELVIEW[5] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.modelview[6] : STATE.MATRIX.MODELVIEW[6] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.modelview[7] : STATE.MATRIX.MODELVIEW[7] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.projection : STATE.MATRIX.PROJECTION : , 4 : -1 : 0 +#var float4x4 glstate.matrix.mvp : STATE.MATRIX.MVP : c[0], 4 : -1 : 1 +#var float4x4 glstate.matrix.texture[0] : STATE.MATRIX.TEXTURE[0] : c[4], 4 : -1 : 1 +#var float4x4 glstate.matrix.texture[1] : STATE.MATRIX.TEXTURE[1] : c[8], 4 : -1 : 1 +#var float4x4 glstate.matrix.texture[2] : STATE.MATRIX.TEXTURE[2] : c[12], 4 : -1 : 1 +#var float4x4 glstate.matrix.texture[3] : STATE.MATRIX.TEXTURE[3] : c[16], 4 : -1 : 1 +#var float4x4 glstate.matrix.texture[4] : STATE.MATRIX.TEXTURE[4] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.texture[5] : STATE.MATRIX.TEXTURE[5] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.texture[6] : STATE.MATRIX.TEXTURE[6] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.texture[7] : STATE.MATRIX.TEXTURE[7] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.palette[0] : STATE.MATRIX.PALETTE[0] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.palette[1] : STATE.MATRIX.PALETTE[1] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.palette[2] : STATE.MATRIX.PALETTE[2] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.palette[3] : STATE.MATRIX.PALETTE[3] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.palette[4] : STATE.MATRIX.PALETTE[4] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.palette[5] : STATE.MATRIX.PALETTE[5] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.palette[6] : STATE.MATRIX.PALETTE[6] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.palette[7] : STATE.MATRIX.PALETTE[7] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.program[0] : STATE.MATRIX.PROGRAM[0] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.program[1] : STATE.MATRIX.PROGRAM[1] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.program[2] : STATE.MATRIX.PROGRAM[2] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.program[3] : STATE.MATRIX.PROGRAM[3] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.program[4] : STATE.MATRIX.PROGRAM[4] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.program[5] : STATE.MATRIX.PROGRAM[5] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.program[6] : STATE.MATRIX.PROGRAM[6] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.program[7] : STATE.MATRIX.PROGRAM[7] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.modelview[0] : STATE.MATRIX.MODELVIEW[0].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.modelview[1] : STATE.MATRIX.MODELVIEW[1].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.modelview[2] : STATE.MATRIX.MODELVIEW[2].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.modelview[3] : STATE.MATRIX.MODELVIEW[3].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.modelview[4] : STATE.MATRIX.MODELVIEW[4].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.modelview[5] : STATE.MATRIX.MODELVIEW[5].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.modelview[6] : STATE.MATRIX.MODELVIEW[6].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.modelview[7] : STATE.MATRIX.MODELVIEW[7].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.projection : STATE.MATRIX.PROJECTION.INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.mvp : STATE.MATRIX.MVP.INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.texture[0] : STATE.MATRIX.TEXTURE[0].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.texture[1] : STATE.MATRIX.TEXTURE[1].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.texture[2] : STATE.MATRIX.TEXTURE[2].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.texture[3] : STATE.MATRIX.TEXTURE[3].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.texture[4] : STATE.MATRIX.TEXTURE[4].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.texture[5] : STATE.MATRIX.TEXTURE[5].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.texture[6] : STATE.MATRIX.TEXTURE[6].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.texture[7] : STATE.MATRIX.TEXTURE[7].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.palette[0] : STATE.MATRIX.PALETTE[0].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.palette[1] : STATE.MATRIX.PALETTE[1].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.palette[2] : STATE.MATRIX.PALETTE[2].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.palette[3] : STATE.MATRIX.PALETTE[3].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.palette[4] : STATE.MATRIX.PALETTE[4].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.palette[5] : STATE.MATRIX.PALETTE[5].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.palette[6] : STATE.MATRIX.PALETTE[6].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.palette[7] : STATE.MATRIX.PALETTE[7].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.program[0] : STATE.MATRIX.PROGRAM[0].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.program[1] : STATE.MATRIX.PROGRAM[1].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.program[2] : STATE.MATRIX.PROGRAM[2].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.program[3] : STATE.MATRIX.PROGRAM[3].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.program[4] : STATE.MATRIX.PROGRAM[4].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.program[5] : STATE.MATRIX.PROGRAM[5].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.program[6] : STATE.MATRIX.PROGRAM[6].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.program[7] : STATE.MATRIX.PROGRAM[7].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.modelview[0] : STATE.MATRIX.MODELVIEW[0].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.modelview[1] : STATE.MATRIX.MODELVIEW[1].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.modelview[2] : STATE.MATRIX.MODELVIEW[2].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.modelview[3] : STATE.MATRIX.MODELVIEW[3].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.modelview[4] : STATE.MATRIX.MODELVIEW[4].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.modelview[5] : STATE.MATRIX.MODELVIEW[5].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.modelview[6] : STATE.MATRIX.MODELVIEW[6].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.modelview[7] : STATE.MATRIX.MODELVIEW[7].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.projection : STATE.MATRIX.PROJECTION.TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.mvp : STATE.MATRIX.MVP.TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.texture[0] : STATE.MATRIX.TEXTURE[0].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.texture[1] : STATE.MATRIX.TEXTURE[1].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.texture[2] : STATE.MATRIX.TEXTURE[2].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.texture[3] : STATE.MATRIX.TEXTURE[3].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.texture[4] : STATE.MATRIX.TEXTURE[4].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.texture[5] : STATE.MATRIX.TEXTURE[5].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.texture[6] : STATE.MATRIX.TEXTURE[6].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.texture[7] : STATE.MATRIX.TEXTURE[7].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.palette[0] : STATE.MATRIX.PALETTE[0].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.palette[1] : STATE.MATRIX.PALETTE[1].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.palette[2] : STATE.MATRIX.PALETTE[2].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.palette[3] : STATE.MATRIX.PALETTE[3].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.palette[4] : STATE.MATRIX.PALETTE[4].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.palette[5] : STATE.MATRIX.PALETTE[5].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.palette[6] : STATE.MATRIX.PALETTE[6].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.palette[7] : STATE.MATRIX.PALETTE[7].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.program[0] : STATE.MATRIX.PROGRAM[0].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.program[1] : STATE.MATRIX.PROGRAM[1].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.program[2] : STATE.MATRIX.PROGRAM[2].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.program[3] : STATE.MATRIX.PROGRAM[3].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.program[4] : STATE.MATRIX.PROGRAM[4].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.program[5] : STATE.MATRIX.PROGRAM[5].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.program[6] : STATE.MATRIX.PROGRAM[6].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.program[7] : STATE.MATRIX.PROGRAM[7].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.modelview[0] : STATE.MATRIX.MODELVIEW[0].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.modelview[1] : STATE.MATRIX.MODELVIEW[1].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.modelview[2] : STATE.MATRIX.MODELVIEW[2].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.modelview[3] : STATE.MATRIX.MODELVIEW[3].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.modelview[4] : STATE.MATRIX.MODELVIEW[4].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.modelview[5] : STATE.MATRIX.MODELVIEW[5].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.modelview[6] : STATE.MATRIX.MODELVIEW[6].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.modelview[7] : STATE.MATRIX.MODELVIEW[7].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.projection : STATE.MATRIX.PROJECTION.INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.mvp : STATE.MATRIX.MVP.INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.texture[0] : STATE.MATRIX.TEXTURE[0].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.texture[1] : STATE.MATRIX.TEXTURE[1].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.texture[2] : STATE.MATRIX.TEXTURE[2].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.texture[3] : STATE.MATRIX.TEXTURE[3].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.texture[4] : STATE.MATRIX.TEXTURE[4].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.texture[5] : STATE.MATRIX.TEXTURE[5].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.texture[6] : STATE.MATRIX.TEXTURE[6].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.texture[7] : STATE.MATRIX.TEXTURE[7].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.palette[0] : STATE.MATRIX.PALETTE[0].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.palette[1] : STATE.MATRIX.PALETTE[1].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.palette[2] : STATE.MATRIX.PALETTE[2].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.palette[3] : STATE.MATRIX.PALETTE[3].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.palette[4] : STATE.MATRIX.PALETTE[4].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.palette[5] : STATE.MATRIX.PALETTE[5].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.palette[6] : STATE.MATRIX.PALETTE[6].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.palette[7] : STATE.MATRIX.PALETTE[7].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.program[0] : STATE.MATRIX.PROGRAM[0].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.program[1] : STATE.MATRIX.PROGRAM[1].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.program[2] : STATE.MATRIX.PROGRAM[2].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.program[3] : STATE.MATRIX.PROGRAM[3].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.program[4] : STATE.MATRIX.PROGRAM[4].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.program[5] : STATE.MATRIX.PROGRAM[5].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.program[6] : STATE.MATRIX.PROGRAM[6].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.program[7] : STATE.MATRIX.PROGRAM[7].INVTRANS : , 4 : -1 : 0 +#var float4 IN.position : $vin.POSITION : POSITION : 0 : 1 +#var float4 IN.tex0 : $vin.ATTR8 : ATTR8 : 0 : 1 +#var float3 IN.tangent : $vin.ATTR9 : ATTR9 : 0 : 1 +#var float3 IN.binormal : $vin.ATTR10 : ATTR10 : 0 : 1 +#var float3 IN.normal : $vin.ATTR11 : ATTR11 : 0 : 1 +#var float4 main.hposition : $vout.HPOS : HPOS : -1 : 1 +#var float4 main.position : $vout.TEX0 : TEX0 : -1 : 1 +#var float4 main.tex_diffuse_bump : $vout.TEX1 : TEX1 : -1 : 1 +#var float4 main.tex_specular : $vout.TEX2 : TEX2 : -1 : 1 +#var float4 main.tex_atten_xy_z : $vout.TEX3 : TEX3 : -1 : 1 +#var float3 main.tangent : $vout.TEX4 : TEX4 : -1 : 1 +#var float3 main.binormal : $vout.TEX5 : TEX5 : -1 : 1 +#var float3 main.normal : $vout.TEX6 : TEX6 : -1 : 1 +PARAM c[20] = { state.matrix.mvp, + state.matrix.texture[0], + state.matrix.texture[1], + state.matrix.texture[2], + state.matrix.texture[3] }; +TEMP R0; +DP4 result.position.w, vertex.position, c[3]; +DP4 result.position.z, vertex.position, c[2]; +DP4 result.position.y, vertex.position, c[1]; +DP4 result.position.x, vertex.position, c[0]; +DP4 R0.y, vertex.attrib[8], c[9]; +DP4 R0.x, vertex.attrib[8], c[8]; +MOV result.texcoord[0], vertex.position; +MOV result.texcoord[1].zw, R0.xyxy; +DP4 result.texcoord[1].y, vertex.attrib[8], c[5]; +DP4 result.texcoord[1].x, vertex.attrib[8], c[4]; +DP4 result.texcoord[2].w, vertex.attrib[8], c[15]; +DP4 result.texcoord[2].z, vertex.attrib[8], c[14]; +DP4 result.texcoord[2].y, vertex.attrib[8], c[13]; +DP4 result.texcoord[2].x, vertex.attrib[8], c[12]; +DP4 result.texcoord[3].w, vertex.position, c[19]; +DP4 result.texcoord[3].z, vertex.position, c[18]; +DP4 result.texcoord[3].y, vertex.position, c[17]; +DP4 result.texcoord[3].x, vertex.position, c[16]; +MOV result.texcoord[4].xyz, vertex.attrib[9]; +MOV result.texcoord[5].xyz, vertex.attrib[10]; +MOV result.texcoord[6].xyz, vertex.attrib[11]; +END +# 21 instructions, 1 R-regs diff --git a/setup/data/tools/gl/lighting_DBS_omni_vp.glsl b/setup/data/tools/gl/lighting_DBS_omni_vp.glsl new file mode 100644 index 00000000..6900b5af --- /dev/null +++ b/setup/data/tools/gl/lighting_DBS_omni_vp.glsl @@ -0,0 +1,58 @@ +/// ============================================================================ +/* +Copyright (C) 2004 Robert Beckebans +Please see the file "CONTRIBUTORS" for a list of contributors + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU Lesser General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +See the GNU Lesser General Public License for more details. + +You should have received a copy of the GNU Lesser General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +*/ +/// ============================================================================ + +attribute vec4 attr_TexCoord0; +attribute vec3 attr_Tangent; +attribute vec3 attr_Binormal; + +varying vec3 var_vertex; +varying vec4 var_tex_diffuse_bump; +varying vec2 var_tex_specular; +varying vec4 var_tex_atten_xy_z; +varying mat3 var_mat_os2ts; + +void main() +{ + // transform vertex position into homogenous clip-space + gl_Position = ftransform(); + + // assign position in object space + var_vertex = gl_Vertex.xyz; + + // transform texcoords into diffusemap texture space + var_tex_diffuse_bump.st = (gl_TextureMatrix[0] * attr_TexCoord0).st; + + // transform texcoords into bumpmap texture space + var_tex_diffuse_bump.pq = (gl_TextureMatrix[1] * attr_TexCoord0).st; + + // transform texcoords into specularmap texture space + var_tex_specular = (gl_TextureMatrix[2] * attr_TexCoord0).st; + + // calc light xy,z attenuation in light space + var_tex_atten_xy_z = gl_TextureMatrix[3] * gl_Vertex; + + + // construct object-space-to-tangent-space 3x3 matrix + var_mat_os2ts = mat3( attr_Tangent.x, attr_Binormal.x, gl_Normal.x, + attr_Tangent.y, attr_Binormal.y, gl_Normal.y, + attr_Tangent.z, attr_Binormal.z, gl_Normal.z ); +} diff --git a/setup/data/tools/gl/utils.cg b/setup/data/tools/gl/utils.cg new file mode 100644 index 00000000..63bfcb6c --- /dev/null +++ b/setup/data/tools/gl/utils.cg @@ -0,0 +1,36 @@ +/// ============================================================================ +/* +Copyright (C) 2004 Robert Beckebans +Please see the file "AUTHORS" for a list of contributors + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +See the GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +*/ +/// ============================================================================ + +// fresnel approximation +float fast_fresnel(float3 I, float3 N, float3 fresnel_values) +{ + float power = fresnel_values.x; + float scale = fresnel_values.y; + float bias = fresnel_values.z; + + return bias + pow(1.0 - dot(I, N), power) * scale; +} + +float3 CG_Expand(float3 v) +{ + return (v - 0.5) * 2; // expand a range-compressed vector +} diff --git a/setup/data/tools/gl/zfill_arbfp1.cg b/setup/data/tools/gl/zfill_arbfp1.cg new file mode 100644 index 00000000..c80189c2 --- /dev/null +++ b/setup/data/tools/gl/zfill_arbfp1.cg @@ -0,0 +1,47 @@ +/// ============================================================================ +/* +Copyright (C) 2003 Robert Beckebans +Copyright (C) 2003, 2004 contributors of the XreaL project +Please see the file "AUTHORS" for a list of contributors + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +See the GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +*/ +/// ============================================================================ + + +struct cg_vertex2fragment +{ + float4 position : POSITION; + float4 tex0 : TEXCOORD0; +}; + +struct cg_fragment2final +{ + float4 color : COLOR; +}; + + +cg_fragment2final main(in cg_vertex2fragment IN, + uniform sampler2D colormap) +{ + cg_fragment2final OUT; + + OUT.color.w = tex2D(colormap, IN.tex0.xy).a; + + OUT.color.xyz = 0; + + return OUT; +} diff --git a/setup/data/tools/gl/zfill_arbvp1.cg b/setup/data/tools/gl/zfill_arbvp1.cg new file mode 100644 index 00000000..4ffc6e27 --- /dev/null +++ b/setup/data/tools/gl/zfill_arbvp1.cg @@ -0,0 +1,49 @@ +/// ============================================================================ +/* +Copyright (C) 2003 Robert Beckebans +Copyright (C) 2003, 2004 contributors of the XreaL project +Please see the file "AUTHORS" for a list of contributors + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +See the GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +*/ +/// ============================================================================ + + +struct cg_app2vertex +{ + float4 position : ATTR0; + float4 texcoord0 : ATTR8; +}; + +struct cg_vertex2fragment +{ + float4 position : POSITION; + float4 tex0 : TEXCOORD0; +}; + + +cg_vertex2fragment main(cg_app2vertex IN) +{ + cg_vertex2fragment OUT; + + // transform vertex position into homogenous clip-space + OUT.position = mul(glstate.matrix.mvp, IN.position); + + // transform texcoords into 1st texture space + OUT.tex0 = mul(glstate.matrix.texture[0], IN.texcoord0); + + return OUT; +} diff --git a/setup/data/tools/gl/zfill_fp.glp b/setup/data/tools/gl/zfill_fp.glp new file mode 100644 index 00000000..5eb8b129 --- /dev/null +++ b/setup/data/tools/gl/zfill_fp.glp @@ -0,0 +1,19 @@ +!!ARBfp1.0 +# cgc version 1.3.0001, build date Aug 4 2004 10:01:10 +# command line args: -profile arbfp1 +# source file: ..\..\setup\data\tools\gl\zfill_arbfp1.cg +#vendor NVIDIA Corporation +#version 1.0.02 +#profile arbfp1 +#program main +#semantic main.colormap +#var float4 IN.position : : : 0 : 0 +#var float4 IN.tex0 : $vin.TEX0 : TEX0 : 0 : 1 +#var sampler2D colormap : : texunit 0 : 1 : 1 +#var float4 main.color : $vout.COL : COL : -1 : 1 +#const c[0] = 0 +PARAM c[1] = { { 0 } }; +MOV result.color.xyz, c[0].x; +TEX result.color.w, fragment.texcoord[0], texture[0], 2D; +END +# 2 instructions, 0 R-regs diff --git a/setup/data/tools/gl/zfill_fp.glsl b/setup/data/tools/gl/zfill_fp.glsl new file mode 100644 index 00000000..537db670 --- /dev/null +++ b/setup/data/tools/gl/zfill_fp.glsl @@ -0,0 +1,29 @@ +/// ============================================================================ +/* +Copyright (C) 2004 Robert Beckebans +Please see the file "CONTRIBUTORS" for a list of contributors + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU Lesser General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +See the GNU Lesser General Public License for more details. + +You should have received a copy of the GNU Lesser General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +*/ +/// ============================================================================ + +uniform sampler2D u_colormap; + +void main() +{ + gl_FragColor.a = texture2D(u_colormap, gl_TexCoord[0].st).a; + gl_FragColor.rgb = vec3(0.0, 0.0, 0.0); +} diff --git a/setup/data/tools/gl/zfill_vp.glp b/setup/data/tools/gl/zfill_vp.glp new file mode 100644 index 00000000..f6eda0c0 --- /dev/null +++ b/setup/data/tools/gl/zfill_vp.glp @@ -0,0 +1,384 @@ +!!ARBvp1.0 +# cgc version 1.3.0001, build date Aug 4 2004 10:01:10 +# command line args: -profile arbvp1 +# source file: ..\..\setup\data\tools\gl\zfill_arbvp1.cg +#vendor NVIDIA Corporation +#version 1.0.02 +#profile arbvp1 +#program main +#semantic glstate : STATE +#var float4 glstate.material.ambient : STATE.MATERIAL.AMBIENT : : -1 : 0 +#var float4 glstate.material.diffuse : STATE.MATERIAL.DIFFUSE : : -1 : 0 +#var float4 glstate.material.specular : STATE.MATERIAL.SPECULAR : : -1 : 0 +#var float4 glstate.material.emission : STATE.MATERIAL.EMISSION : : -1 : 0 +#var float4 glstate.material.shininess : STATE.MATERIAL.SHININESS : : -1 : 0 +#var float4 glstate.material.front.ambient : STATE.MATERIAL.FRONT.AMBIENT : : -1 : 0 +#var float4 glstate.material.front.diffuse : STATE.MATERIAL.FRONT.DIFFUSE : : -1 : 0 +#var float4 glstate.material.front.specular : STATE.MATERIAL.FRONT.SPECULAR : : -1 : 0 +#var float4 glstate.material.front.emission : STATE.MATERIAL.FRONT.EMISSION : : -1 : 0 +#var float4 glstate.material.front.shininess : STATE.MATERIAL.FRONT.SHININESS : : -1 : 0 +#var float4 glstate.material.back.ambient : STATE.MATERIAL.BACK.AMBIENT : : -1 : 0 +#var float4 glstate.material.back.diffuse : STATE.MATERIAL.BACK.DIFFUSE : : -1 : 0 +#var float4 glstate.material.back.specular : STATE.MATERIAL.BACK.SPECULAR : : -1 : 0 +#var float4 glstate.material.back.emission : STATE.MATERIAL.BACK.EMISSION : : -1 : 0 +#var float4 glstate.material.back.shininess : STATE.MATERIAL.BACK.SHININESS : : -1 : 0 +#var float4 glstate.light[0].ambient : STATE.LIGHT[0].AMBIENT : : -1 : 0 +#var float4 glstate.light[0].diffuse : STATE.LIGHT[0].DIFFUSE : : -1 : 0 +#var float4 glstate.light[0].specular : STATE.LIGHT[0].SPECULAR : : -1 : 0 +#var float4 glstate.light[0].position : STATE.LIGHT[0].POSITION : : -1 : 0 +#var float4 glstate.light[0].attenuation : STATE.LIGHT[0].ATTENUATION : : -1 : 0 +#var float4 glstate.light[0].spot.direction : STATE.LIGHT[0].SPOT.DIRECTION : : -1 : 0 +#var float4 glstate.light[0].half : STATE.LIGHT[0].HALF : : -1 : 0 +#var float4 glstate.light[1].ambient : STATE.LIGHT[1].AMBIENT : : -1 : 0 +#var float4 glstate.light[1].diffuse : STATE.LIGHT[1].DIFFUSE : : -1 : 0 +#var float4 glstate.light[1].specular : STATE.LIGHT[1].SPECULAR : : -1 : 0 +#var float4 glstate.light[1].position : STATE.LIGHT[1].POSITION : : -1 : 0 +#var float4 glstate.light[1].attenuation : STATE.LIGHT[1].ATTENUATION : : -1 : 0 +#var float4 glstate.light[1].spot.direction : STATE.LIGHT[1].SPOT.DIRECTION : : -1 : 0 +#var float4 glstate.light[1].half : STATE.LIGHT[1].HALF : : -1 : 0 +#var float4 glstate.light[2].ambient : STATE.LIGHT[2].AMBIENT : : -1 : 0 +#var float4 glstate.light[2].diffuse : STATE.LIGHT[2].DIFFUSE : : -1 : 0 +#var float4 glstate.light[2].specular : STATE.LIGHT[2].SPECULAR : : -1 : 0 +#var float4 glstate.light[2].position : STATE.LIGHT[2].POSITION : : -1 : 0 +#var float4 glstate.light[2].attenuation : STATE.LIGHT[2].ATTENUATION : : -1 : 0 +#var float4 glstate.light[2].spot.direction : STATE.LIGHT[2].SPOT.DIRECTION : : -1 : 0 +#var float4 glstate.light[2].half : STATE.LIGHT[2].HALF : : -1 : 0 +#var float4 glstate.light[3].ambient : STATE.LIGHT[3].AMBIENT : : -1 : 0 +#var float4 glstate.light[3].diffuse : STATE.LIGHT[3].DIFFUSE : : -1 : 0 +#var float4 glstate.light[3].specular : STATE.LIGHT[3].SPECULAR : : -1 : 0 +#var float4 glstate.light[3].position : STATE.LIGHT[3].POSITION : : -1 : 0 +#var float4 glstate.light[3].attenuation : STATE.LIGHT[3].ATTENUATION : : -1 : 0 +#var float4 glstate.light[3].spot.direction : STATE.LIGHT[3].SPOT.DIRECTION : : -1 : 0 +#var float4 glstate.light[3].half : STATE.LIGHT[3].HALF : : -1 : 0 +#var float4 glstate.light[4].ambient : STATE.LIGHT[4].AMBIENT : : -1 : 0 +#var float4 glstate.light[4].diffuse : STATE.LIGHT[4].DIFFUSE : : -1 : 0 +#var float4 glstate.light[4].specular : STATE.LIGHT[4].SPECULAR : : -1 : 0 +#var float4 glstate.light[4].position : STATE.LIGHT[4].POSITION : : -1 : 0 +#var float4 glstate.light[4].attenuation : STATE.LIGHT[4].ATTENUATION : : -1 : 0 +#var float4 glstate.light[4].spot.direction : STATE.LIGHT[4].SPOT.DIRECTION : : -1 : 0 +#var float4 glstate.light[4].half : STATE.LIGHT[4].HALF : : -1 : 0 +#var float4 glstate.light[5].ambient : STATE.LIGHT[5].AMBIENT : : -1 : 0 +#var float4 glstate.light[5].diffuse : STATE.LIGHT[5].DIFFUSE : : -1 : 0 +#var float4 glstate.light[5].specular : STATE.LIGHT[5].SPECULAR : : -1 : 0 +#var float4 glstate.light[5].position : STATE.LIGHT[5].POSITION : : -1 : 0 +#var float4 glstate.light[5].attenuation : STATE.LIGHT[5].ATTENUATION : : -1 : 0 +#var float4 glstate.light[5].spot.direction : STATE.LIGHT[5].SPOT.DIRECTION : : -1 : 0 +#var float4 glstate.light[5].half : STATE.LIGHT[5].HALF : : -1 : 0 +#var float4 glstate.light[6].ambient : STATE.LIGHT[6].AMBIENT : : -1 : 0 +#var float4 glstate.light[6].diffuse : STATE.LIGHT[6].DIFFUSE : : -1 : 0 +#var float4 glstate.light[6].specular : STATE.LIGHT[6].SPECULAR : : -1 : 0 +#var float4 glstate.light[6].position : STATE.LIGHT[6].POSITION : : -1 : 0 +#var float4 glstate.light[6].attenuation : STATE.LIGHT[6].ATTENUATION : : -1 : 0 +#var float4 glstate.light[6].spot.direction : STATE.LIGHT[6].SPOT.DIRECTION : : -1 : 0 +#var float4 glstate.light[6].half : STATE.LIGHT[6].HALF : : -1 : 0 +#var float4 glstate.light[7].ambient : STATE.LIGHT[7].AMBIENT : : -1 : 0 +#var float4 glstate.light[7].diffuse : STATE.LIGHT[7].DIFFUSE : : -1 : 0 +#var float4 glstate.light[7].specular : STATE.LIGHT[7].SPECULAR : : -1 : 0 +#var float4 glstate.light[7].position : STATE.LIGHT[7].POSITION : : -1 : 0 +#var float4 glstate.light[7].attenuation : STATE.LIGHT[7].ATTENUATION : : -1 : 0 +#var float4 glstate.light[7].spot.direction : STATE.LIGHT[7].SPOT.DIRECTION : : -1 : 0 +#var float4 glstate.light[7].half : STATE.LIGHT[7].HALF : : -1 : 0 +#var float4 glstate.lightmodel.ambient : STATE.LIGHTMODEL.AMBIENT : : -1 : 0 +#var float4 glstate.lightmodel.scenecolor : STATE.LIGHTMODEL.SCENECOLOR : : -1 : 0 +#var float4 glstate.lightmodel.front.scenecolor : STATE.LIGHTMODEL.FRONT.SCENECOLOR : : -1 : 0 +#var float4 glstate.lightmodel.back.scenecolor : STATE.LIGHTMODEL.BACK.SCENECOLOR : : -1 : 0 +#var float4 glstate.lightprod[0].ambient : STATE.LIGHTPROD[0].AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[0].diffuse : STATE.LIGHTPROD[0].DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[0].specular : STATE.LIGHTPROD[0].SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[0].front.ambient : STATE.LIGHTPROD[0].FRONT.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[0].front.diffuse : STATE.LIGHTPROD[0].FRONT.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[0].front.specular : STATE.LIGHTPROD[0].FRONT.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[0].back.ambient : STATE.LIGHTPROD[0].BACK.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[0].back.diffuse : STATE.LIGHTPROD[0].BACK.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[0].back.specular : STATE.LIGHTPROD[0].BACK.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[1].ambient : STATE.LIGHTPROD[1].AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[1].diffuse : STATE.LIGHTPROD[1].DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[1].specular : STATE.LIGHTPROD[1].SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[1].front.ambient : STATE.LIGHTPROD[1].FRONT.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[1].front.diffuse : STATE.LIGHTPROD[1].FRONT.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[1].front.specular : STATE.LIGHTPROD[1].FRONT.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[1].back.ambient : STATE.LIGHTPROD[1].BACK.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[1].back.diffuse : STATE.LIGHTPROD[1].BACK.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[1].back.specular : STATE.LIGHTPROD[1].BACK.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[2].ambient : STATE.LIGHTPROD[2].AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[2].diffuse : STATE.LIGHTPROD[2].DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[2].specular : STATE.LIGHTPROD[2].SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[2].front.ambient : STATE.LIGHTPROD[2].FRONT.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[2].front.diffuse : STATE.LIGHTPROD[2].FRONT.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[2].front.specular : STATE.LIGHTPROD[2].FRONT.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[2].back.ambient : STATE.LIGHTPROD[2].BACK.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[2].back.diffuse : STATE.LIGHTPROD[2].BACK.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[2].back.specular : STATE.LIGHTPROD[2].BACK.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[3].ambient : STATE.LIGHTPROD[3].AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[3].diffuse : STATE.LIGHTPROD[3].DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[3].specular : STATE.LIGHTPROD[3].SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[3].front.ambient : STATE.LIGHTPROD[3].FRONT.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[3].front.diffuse : STATE.LIGHTPROD[3].FRONT.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[3].front.specular : STATE.LIGHTPROD[3].FRONT.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[3].back.ambient : STATE.LIGHTPROD[3].BACK.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[3].back.diffuse : STATE.LIGHTPROD[3].BACK.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[3].back.specular : STATE.LIGHTPROD[3].BACK.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[4].ambient : STATE.LIGHTPROD[4].AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[4].diffuse : STATE.LIGHTPROD[4].DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[4].specular : STATE.LIGHTPROD[4].SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[4].front.ambient : STATE.LIGHTPROD[4].FRONT.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[4].front.diffuse : STATE.LIGHTPROD[4].FRONT.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[4].front.specular : STATE.LIGHTPROD[4].FRONT.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[4].back.ambient : STATE.LIGHTPROD[4].BACK.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[4].back.diffuse : STATE.LIGHTPROD[4].BACK.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[4].back.specular : STATE.LIGHTPROD[4].BACK.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[5].ambient : STATE.LIGHTPROD[5].AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[5].diffuse : STATE.LIGHTPROD[5].DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[5].specular : STATE.LIGHTPROD[5].SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[5].front.ambient : STATE.LIGHTPROD[5].FRONT.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[5].front.diffuse : STATE.LIGHTPROD[5].FRONT.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[5].front.specular : STATE.LIGHTPROD[5].FRONT.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[5].back.ambient : STATE.LIGHTPROD[5].BACK.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[5].back.diffuse : STATE.LIGHTPROD[5].BACK.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[5].back.specular : STATE.LIGHTPROD[5].BACK.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[6].ambient : STATE.LIGHTPROD[6].AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[6].diffuse : STATE.LIGHTPROD[6].DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[6].specular : STATE.LIGHTPROD[6].SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[6].front.ambient : STATE.LIGHTPROD[6].FRONT.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[6].front.diffuse : STATE.LIGHTPROD[6].FRONT.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[6].front.specular : STATE.LIGHTPROD[6].FRONT.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[6].back.ambient : STATE.LIGHTPROD[6].BACK.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[6].back.diffuse : STATE.LIGHTPROD[6].BACK.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[6].back.specular : STATE.LIGHTPROD[6].BACK.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[7].ambient : STATE.LIGHTPROD[7].AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[7].diffuse : STATE.LIGHTPROD[7].DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[7].specular : STATE.LIGHTPROD[7].SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[7].front.ambient : STATE.LIGHTPROD[7].FRONT.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[7].front.diffuse : STATE.LIGHTPROD[7].FRONT.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[7].front.specular : STATE.LIGHTPROD[7].FRONT.SPECULAR : : -1 : 0 +#var float4 glstate.lightprod[7].back.ambient : STATE.LIGHTPROD[7].BACK.AMBIENT : : -1 : 0 +#var float4 glstate.lightprod[7].back.diffuse : STATE.LIGHTPROD[7].BACK.DIFFUSE : : -1 : 0 +#var float4 glstate.lightprod[7].back.specular : STATE.LIGHTPROD[7].BACK.SPECULAR : : -1 : 0 +#var float4 glstate.texgen[0].eye.s : STATE.TEXGEN[0].EYE.S : : -1 : 0 +#var float4 glstate.texgen[0].eye.t : STATE.TEXGEN[0].EYE.T : : -1 : 0 +#var float4 glstate.texgen[0].eye.r : STATE.TEXGEN[0].EYE.R : : -1 : 0 +#var float4 glstate.texgen[0].eye.q : STATE.TEXGEN[0].EYE.Q : : -1 : 0 +#var float4 glstate.texgen[0].object.s : STATE.TEXGEN[0].OBJECT.S : : -1 : 0 +#var float4 glstate.texgen[0].object.t : STATE.TEXGEN[0].OBJECT.T : : -1 : 0 +#var float4 glstate.texgen[0].object.r : STATE.TEXGEN[0].OBJECT.R : : -1 : 0 +#var float4 glstate.texgen[0].object.q : STATE.TEXGEN[0].OBJECT.Q : : -1 : 0 +#var float4 glstate.texgen[1].eye.s : STATE.TEXGEN[1].EYE.S : : -1 : 0 +#var float4 glstate.texgen[1].eye.t : STATE.TEXGEN[1].EYE.T : : -1 : 0 +#var float4 glstate.texgen[1].eye.r : STATE.TEXGEN[1].EYE.R : : -1 : 0 +#var float4 glstate.texgen[1].eye.q : STATE.TEXGEN[1].EYE.Q : : -1 : 0 +#var float4 glstate.texgen[1].object.s : STATE.TEXGEN[1].OBJECT.S : : -1 : 0 +#var float4 glstate.texgen[1].object.t : STATE.TEXGEN[1].OBJECT.T : : -1 : 0 +#var float4 glstate.texgen[1].object.r : STATE.TEXGEN[1].OBJECT.R : : -1 : 0 +#var float4 glstate.texgen[1].object.q : STATE.TEXGEN[1].OBJECT.Q : : -1 : 0 +#var float4 glstate.texgen[2].eye.s : STATE.TEXGEN[2].EYE.S : : -1 : 0 +#var float4 glstate.texgen[2].eye.t : STATE.TEXGEN[2].EYE.T : : -1 : 0 +#var float4 glstate.texgen[2].eye.r : STATE.TEXGEN[2].EYE.R : : -1 : 0 +#var float4 glstate.texgen[2].eye.q : STATE.TEXGEN[2].EYE.Q : : -1 : 0 +#var float4 glstate.texgen[2].object.s : STATE.TEXGEN[2].OBJECT.S : : -1 : 0 +#var float4 glstate.texgen[2].object.t : STATE.TEXGEN[2].OBJECT.T : : -1 : 0 +#var float4 glstate.texgen[2].object.r : STATE.TEXGEN[2].OBJECT.R : : -1 : 0 +#var float4 glstate.texgen[2].object.q : STATE.TEXGEN[2].OBJECT.Q : : -1 : 0 +#var float4 glstate.texgen[3].eye.s : STATE.TEXGEN[3].EYE.S : : -1 : 0 +#var float4 glstate.texgen[3].eye.t : STATE.TEXGEN[3].EYE.T : : -1 : 0 +#var float4 glstate.texgen[3].eye.r : STATE.TEXGEN[3].EYE.R : : -1 : 0 +#var float4 glstate.texgen[3].eye.q : STATE.TEXGEN[3].EYE.Q : : -1 : 0 +#var float4 glstate.texgen[3].object.s : STATE.TEXGEN[3].OBJECT.S : : -1 : 0 +#var float4 glstate.texgen[3].object.t : STATE.TEXGEN[3].OBJECT.T : : -1 : 0 +#var float4 glstate.texgen[3].object.r : STATE.TEXGEN[3].OBJECT.R : : -1 : 0 +#var float4 glstate.texgen[3].object.q : STATE.TEXGEN[3].OBJECT.Q : : -1 : 0 +#var float4 glstate.texgen[4].eye.s : STATE.TEXGEN[4].EYE.S : : -1 : 0 +#var float4 glstate.texgen[4].eye.t : STATE.TEXGEN[4].EYE.T : : -1 : 0 +#var float4 glstate.texgen[4].eye.r : STATE.TEXGEN[4].EYE.R : : -1 : 0 +#var float4 glstate.texgen[4].eye.q : STATE.TEXGEN[4].EYE.Q : : -1 : 0 +#var float4 glstate.texgen[4].object.s : STATE.TEXGEN[4].OBJECT.S : : -1 : 0 +#var float4 glstate.texgen[4].object.t : STATE.TEXGEN[4].OBJECT.T : : -1 : 0 +#var float4 glstate.texgen[4].object.r : STATE.TEXGEN[4].OBJECT.R : : -1 : 0 +#var float4 glstate.texgen[4].object.q : STATE.TEXGEN[4].OBJECT.Q : : -1 : 0 +#var float4 glstate.texgen[5].eye.s : STATE.TEXGEN[5].EYE.S : : -1 : 0 +#var float4 glstate.texgen[5].eye.t : STATE.TEXGEN[5].EYE.T : : -1 : 0 +#var float4 glstate.texgen[5].eye.r : STATE.TEXGEN[5].EYE.R : : -1 : 0 +#var float4 glstate.texgen[5].eye.q : STATE.TEXGEN[5].EYE.Q : : -1 : 0 +#var float4 glstate.texgen[5].object.s : STATE.TEXGEN[5].OBJECT.S : : -1 : 0 +#var float4 glstate.texgen[5].object.t : STATE.TEXGEN[5].OBJECT.T : : -1 : 0 +#var float4 glstate.texgen[5].object.r : STATE.TEXGEN[5].OBJECT.R : : -1 : 0 +#var float4 glstate.texgen[5].object.q : STATE.TEXGEN[5].OBJECT.Q : : -1 : 0 +#var float4 glstate.texgen[6].eye.s : STATE.TEXGEN[6].EYE.S : : -1 : 0 +#var float4 glstate.texgen[6].eye.t : STATE.TEXGEN[6].EYE.T : : -1 : 0 +#var float4 glstate.texgen[6].eye.r : STATE.TEXGEN[6].EYE.R : : -1 : 0 +#var float4 glstate.texgen[6].eye.q : STATE.TEXGEN[6].EYE.Q : : -1 : 0 +#var float4 glstate.texgen[6].object.s : STATE.TEXGEN[6].OBJECT.S : : -1 : 0 +#var float4 glstate.texgen[6].object.t : STATE.TEXGEN[6].OBJECT.T : : -1 : 0 +#var float4 glstate.texgen[6].object.r : STATE.TEXGEN[6].OBJECT.R : : -1 : 0 +#var float4 glstate.texgen[6].object.q : STATE.TEXGEN[6].OBJECT.Q : : -1 : 0 +#var float4 glstate.texgen[7].eye.s : STATE.TEXGEN[7].EYE.S : : -1 : 0 +#var float4 glstate.texgen[7].eye.t : STATE.TEXGEN[7].EYE.T : : -1 : 0 +#var float4 glstate.texgen[7].eye.r : STATE.TEXGEN[7].EYE.R : : -1 : 0 +#var float4 glstate.texgen[7].eye.q : STATE.TEXGEN[7].EYE.Q : : -1 : 0 +#var float4 glstate.texgen[7].object.s : STATE.TEXGEN[7].OBJECT.S : : -1 : 0 +#var float4 glstate.texgen[7].object.t : STATE.TEXGEN[7].OBJECT.T : : -1 : 0 +#var float4 glstate.texgen[7].object.r : STATE.TEXGEN[7].OBJECT.R : : -1 : 0 +#var float4 glstate.texgen[7].object.q : STATE.TEXGEN[7].OBJECT.Q : : -1 : 0 +#var float4 glstate.fog.color : STATE.FOG.COLOR : : -1 : 0 +#var float4 glstate.fog.params : STATE.FOG.PARAMS : : -1 : 0 +#var float4 glstate.clip[0].plane : STATE.CLIP[0].PLANE : : -1 : 0 +#var float4 glstate.clip[1].plane : STATE.CLIP[1].PLANE : : -1 : 0 +#var float4 glstate.clip[2].plane : STATE.CLIP[2].PLANE : : -1 : 0 +#var float4 glstate.clip[3].plane : STATE.CLIP[3].PLANE : : -1 : 0 +#var float4 glstate.clip[4].plane : STATE.CLIP[4].PLANE : : -1 : 0 +#var float4 glstate.clip[5].plane : STATE.CLIP[5].PLANE : : -1 : 0 +#var float4 glstate.clip[6].plane : STATE.CLIP[6].PLANE : : -1 : 0 +#var float4 glstate.clip[7].plane : STATE.CLIP[7].PLANE : : -1 : 0 +#var float glstate.point.size : STATE.POINT.SIZE : : -1 : 0 +#var float glstate.point.attenuation : STATE.POINT.ATTENUATION : : -1 : 0 +#var float4x4 glstate.matrix.modelview[0] : STATE.MATRIX.MODELVIEW[0] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.modelview[1] : STATE.MATRIX.MODELVIEW[1] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.modelview[2] : STATE.MATRIX.MODELVIEW[2] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.modelview[3] : STATE.MATRIX.MODELVIEW[3] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.modelview[4] : STATE.MATRIX.MODELVIEW[4] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.modelview[5] : STATE.MATRIX.MODELVIEW[5] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.modelview[6] : STATE.MATRIX.MODELVIEW[6] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.modelview[7] : STATE.MATRIX.MODELVIEW[7] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.projection : STATE.MATRIX.PROJECTION : , 4 : -1 : 0 +#var float4x4 glstate.matrix.mvp : STATE.MATRIX.MVP : c[0], 4 : -1 : 1 +#var float4x4 glstate.matrix.texture[0] : STATE.MATRIX.TEXTURE[0] : c[4], 4 : -1 : 1 +#var float4x4 glstate.matrix.texture[1] : STATE.MATRIX.TEXTURE[1] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.texture[2] : STATE.MATRIX.TEXTURE[2] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.texture[3] : STATE.MATRIX.TEXTURE[3] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.texture[4] : STATE.MATRIX.TEXTURE[4] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.texture[5] : STATE.MATRIX.TEXTURE[5] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.texture[6] : STATE.MATRIX.TEXTURE[6] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.texture[7] : STATE.MATRIX.TEXTURE[7] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.palette[0] : STATE.MATRIX.PALETTE[0] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.palette[1] : STATE.MATRIX.PALETTE[1] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.palette[2] : STATE.MATRIX.PALETTE[2] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.palette[3] : STATE.MATRIX.PALETTE[3] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.palette[4] : STATE.MATRIX.PALETTE[4] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.palette[5] : STATE.MATRIX.PALETTE[5] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.palette[6] : STATE.MATRIX.PALETTE[6] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.palette[7] : STATE.MATRIX.PALETTE[7] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.program[0] : STATE.MATRIX.PROGRAM[0] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.program[1] : STATE.MATRIX.PROGRAM[1] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.program[2] : STATE.MATRIX.PROGRAM[2] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.program[3] : STATE.MATRIX.PROGRAM[3] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.program[4] : STATE.MATRIX.PROGRAM[4] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.program[5] : STATE.MATRIX.PROGRAM[5] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.program[6] : STATE.MATRIX.PROGRAM[6] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.program[7] : STATE.MATRIX.PROGRAM[7] : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.modelview[0] : STATE.MATRIX.MODELVIEW[0].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.modelview[1] : STATE.MATRIX.MODELVIEW[1].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.modelview[2] : STATE.MATRIX.MODELVIEW[2].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.modelview[3] : STATE.MATRIX.MODELVIEW[3].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.modelview[4] : STATE.MATRIX.MODELVIEW[4].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.modelview[5] : STATE.MATRIX.MODELVIEW[5].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.modelview[6] : STATE.MATRIX.MODELVIEW[6].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.modelview[7] : STATE.MATRIX.MODELVIEW[7].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.projection : STATE.MATRIX.PROJECTION.INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.mvp : STATE.MATRIX.MVP.INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.texture[0] : STATE.MATRIX.TEXTURE[0].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.texture[1] : STATE.MATRIX.TEXTURE[1].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.texture[2] : STATE.MATRIX.TEXTURE[2].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.texture[3] : STATE.MATRIX.TEXTURE[3].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.texture[4] : STATE.MATRIX.TEXTURE[4].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.texture[5] : STATE.MATRIX.TEXTURE[5].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.texture[6] : STATE.MATRIX.TEXTURE[6].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.texture[7] : STATE.MATRIX.TEXTURE[7].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.palette[0] : STATE.MATRIX.PALETTE[0].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.palette[1] : STATE.MATRIX.PALETTE[1].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.palette[2] : STATE.MATRIX.PALETTE[2].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.palette[3] : STATE.MATRIX.PALETTE[3].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.palette[4] : STATE.MATRIX.PALETTE[4].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.palette[5] : STATE.MATRIX.PALETTE[5].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.palette[6] : STATE.MATRIX.PALETTE[6].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.palette[7] : STATE.MATRIX.PALETTE[7].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.program[0] : STATE.MATRIX.PROGRAM[0].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.program[1] : STATE.MATRIX.PROGRAM[1].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.program[2] : STATE.MATRIX.PROGRAM[2].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.program[3] : STATE.MATRIX.PROGRAM[3].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.program[4] : STATE.MATRIX.PROGRAM[4].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.program[5] : STATE.MATRIX.PROGRAM[5].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.program[6] : STATE.MATRIX.PROGRAM[6].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.inverse.program[7] : STATE.MATRIX.PROGRAM[7].INVERSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.modelview[0] : STATE.MATRIX.MODELVIEW[0].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.modelview[1] : STATE.MATRIX.MODELVIEW[1].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.modelview[2] : STATE.MATRIX.MODELVIEW[2].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.modelview[3] : STATE.MATRIX.MODELVIEW[3].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.modelview[4] : STATE.MATRIX.MODELVIEW[4].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.modelview[5] : STATE.MATRIX.MODELVIEW[5].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.modelview[6] : STATE.MATRIX.MODELVIEW[6].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.modelview[7] : STATE.MATRIX.MODELVIEW[7].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.projection : STATE.MATRIX.PROJECTION.TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.mvp : STATE.MATRIX.MVP.TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.texture[0] : STATE.MATRIX.TEXTURE[0].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.texture[1] : STATE.MATRIX.TEXTURE[1].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.texture[2] : STATE.MATRIX.TEXTURE[2].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.texture[3] : STATE.MATRIX.TEXTURE[3].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.texture[4] : STATE.MATRIX.TEXTURE[4].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.texture[5] : STATE.MATRIX.TEXTURE[5].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.texture[6] : STATE.MATRIX.TEXTURE[6].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.texture[7] : STATE.MATRIX.TEXTURE[7].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.palette[0] : STATE.MATRIX.PALETTE[0].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.palette[1] : STATE.MATRIX.PALETTE[1].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.palette[2] : STATE.MATRIX.PALETTE[2].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.palette[3] : STATE.MATRIX.PALETTE[3].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.palette[4] : STATE.MATRIX.PALETTE[4].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.palette[5] : STATE.MATRIX.PALETTE[5].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.palette[6] : STATE.MATRIX.PALETTE[6].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.palette[7] : STATE.MATRIX.PALETTE[7].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.program[0] : STATE.MATRIX.PROGRAM[0].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.program[1] : STATE.MATRIX.PROGRAM[1].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.program[2] : STATE.MATRIX.PROGRAM[2].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.program[3] : STATE.MATRIX.PROGRAM[3].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.program[4] : STATE.MATRIX.PROGRAM[4].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.program[5] : STATE.MATRIX.PROGRAM[5].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.program[6] : STATE.MATRIX.PROGRAM[6].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.transpose.program[7] : STATE.MATRIX.PROGRAM[7].TRANSPOSE : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.modelview[0] : STATE.MATRIX.MODELVIEW[0].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.modelview[1] : STATE.MATRIX.MODELVIEW[1].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.modelview[2] : STATE.MATRIX.MODELVIEW[2].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.modelview[3] : STATE.MATRIX.MODELVIEW[3].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.modelview[4] : STATE.MATRIX.MODELVIEW[4].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.modelview[5] : STATE.MATRIX.MODELVIEW[5].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.modelview[6] : STATE.MATRIX.MODELVIEW[6].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.modelview[7] : STATE.MATRIX.MODELVIEW[7].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.projection : STATE.MATRIX.PROJECTION.INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.mvp : STATE.MATRIX.MVP.INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.texture[0] : STATE.MATRIX.TEXTURE[0].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.texture[1] : STATE.MATRIX.TEXTURE[1].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.texture[2] : STATE.MATRIX.TEXTURE[2].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.texture[3] : STATE.MATRIX.TEXTURE[3].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.texture[4] : STATE.MATRIX.TEXTURE[4].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.texture[5] : STATE.MATRIX.TEXTURE[5].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.texture[6] : STATE.MATRIX.TEXTURE[6].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.texture[7] : STATE.MATRIX.TEXTURE[7].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.palette[0] : STATE.MATRIX.PALETTE[0].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.palette[1] : STATE.MATRIX.PALETTE[1].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.palette[2] : STATE.MATRIX.PALETTE[2].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.palette[3] : STATE.MATRIX.PALETTE[3].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.palette[4] : STATE.MATRIX.PALETTE[4].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.palette[5] : STATE.MATRIX.PALETTE[5].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.palette[6] : STATE.MATRIX.PALETTE[6].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.palette[7] : STATE.MATRIX.PALETTE[7].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.program[0] : STATE.MATRIX.PROGRAM[0].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.program[1] : STATE.MATRIX.PROGRAM[1].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.program[2] : STATE.MATRIX.PROGRAM[2].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.program[3] : STATE.MATRIX.PROGRAM[3].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.program[4] : STATE.MATRIX.PROGRAM[4].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.program[5] : STATE.MATRIX.PROGRAM[5].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.program[6] : STATE.MATRIX.PROGRAM[6].INVTRANS : , 4 : -1 : 0 +#var float4x4 glstate.matrix.invtrans.program[7] : STATE.MATRIX.PROGRAM[7].INVTRANS : , 4 : -1 : 0 +#var float4 IN.position : $vin.ATTR0 : ATTR0 : 0 : 1 +#var float4 IN.texcoord0 : $vin.ATTR8 : ATTR8 : 0 : 1 +#var float4 main.position : $vout.HPOS : HPOS : -1 : 1 +#var float4 main.tex0 : $vout.TEX0 : TEX0 : -1 : 1 +PARAM c[8] = { state.matrix.mvp, + state.matrix.texture[0] }; +DP4 result.position.w, vertex.attrib[0], c[3]; +DP4 result.position.z, vertex.attrib[0], c[2]; +DP4 result.position.y, vertex.attrib[0], c[1]; +DP4 result.position.x, vertex.attrib[0], c[0]; +DP4 result.texcoord[0].w, vertex.attrib[8], c[7]; +DP4 result.texcoord[0].z, vertex.attrib[8], c[6]; +DP4 result.texcoord[0].y, vertex.attrib[8], c[5]; +DP4 result.texcoord[0].x, vertex.attrib[8], c[4]; +END +# 8 instructions, 0 R-regs diff --git a/setup/data/tools/gl/zfill_vp.glsl b/setup/data/tools/gl/zfill_vp.glsl new file mode 100644 index 00000000..4c81280e --- /dev/null +++ b/setup/data/tools/gl/zfill_vp.glsl @@ -0,0 +1,35 @@ +/// ============================================================================ +/* +Copyright (C) 2004 Robert Beckebans +Please see the file "CONTRIBUTORS" for a list of contributors + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU Lesser General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +See the GNU Lesser General Public License for more details. + +You should have received a copy of the GNU Lesser General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +*/ +/// ============================================================================ + +attribute vec4 attr_TexCoord0; + +void main() +{ + // transform vertex position into homogenous clip-space + gl_Position = ftransform(); + + // transform texcoords + gl_TexCoord[0] = gl_TextureMatrix[0] * gl_MultiTexCoord0; + + // assign color + gl_FrontColor = gl_Color; +} diff --git a/setup/data/tools/global.xlink b/setup/data/tools/global.xlink new file mode 100644 index 00000000..8fbd0433 --- /dev/null +++ b/setup/data/tools/global.xlink @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_caulk.bmp b/setup/data/tools/plugins/bitmaps/bobtoolz_caulk.bmp new file mode 100644 index 0000000000000000000000000000000000000000..522395034ccf7b609f78b287d027a125bac211a9 GIT binary patch literal 320 zcmZ?rbzo!w13v}^1`P%V1_1^J27U$x21W)BusDbi;$~m~VKxQ^1`q~`{r~@;0R(Ls zY#H8&ykYn|>n{TnIshp|U?wI87BFB10|s1t1_lO@0+>7l3o9!~0Lo`zVFAgqvSQ=2 uf|Y_TVFAfw;j=QZvao<00+nZFWnchtVd_~~SyA+(@DZM2U|?WkU;qFlvJOiC literal 0 HcmV?d00001 diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_cleanup.bmp b/setup/data/tools/plugins/bitmaps/bobtoolz_cleanup.bmp new file mode 100644 index 0000000000000000000000000000000000000000..33cc9490f08d5987542b82cc6e8e51ee6d2d8f05 GIT binary patch literal 316 zcmZ?rwP9oc11|;!1`P%V1_1^J27U$x21W)BusDbi;$~m~VO9nP1`z(w@SoxFT4@H> zDf|ro|NjRm!HU5~Gl2kDnvoGCfXqebgOo8bFflQK8~|1g7D3}f6hKS^$rHzC0BHbO b2vQEU0AdBiJ_e8ikUW|LQMeF!u%!$De@_XE literal 0 HcmV?d00001 diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_dropent.bmp b/setup/data/tools/plugins/bitmaps/bobtoolz_dropent.bmp new file mode 100644 index 0000000000000000000000000000000000000000..2fcdcba36568f7861194644c5084c40595258c04 GIT binary patch literal 312 zcmZ?rwP0ib12+Z+1`P%V1_1^J27U$x21W)Bu=pni1_mK+2xehmU;yF&4F4I9#*2dG z|Ns9Frm+x=P@|zzjEpD(ATE*s6BNJ|Gl3N_LCj!eWMpDsWMlw|fgH!k$N=IqF@QuM kTEO}tOfU(R2eUy0h!3J+7{X_QbHVzV;C!$xFi8v=05pmTG5`Po literal 0 HcmV?d00001 diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_merge.bmp b/setup/data/tools/plugins/bitmaps/bobtoolz_merge.bmp new file mode 100644 index 0000000000000000000000000000000000000000..cc5e272cd28acabf840d47882aca3aa1f13e2bc7 GIT binary patch literal 312 zcmZ?rwP0ib12+Z+1`P%V1_1^J27U$x21W)Bu=pni1_mK+2xehmU;yF&4F4Gzz_=2u z21+n7K^ahr5o$C814IJKXJTMr1Peg;OpFW+j9>vUp9w@Vf(1YOsPcj0_+NC?8}B2t(C_ya2Kvq>uq529g6g48#UW!1xRh4op2r2^51=LYZI+i4Opk CQ3h`S literal 0 HcmV?d00001 diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_poly.bmp b/setup/data/tools/plugins/bitmaps/bobtoolz_poly.bmp new file mode 100644 index 0000000000000000000000000000000000000000..ed720e90e2f1d8c01c3716d9cf691df751871adb GIT binary patch literal 320 zcmZ?rbzo!w13v}^1`P%V1_1^J27U$x21W)BusDbi;$~m~VKxQ^1`z(w@Soui!yks9 z3_ls{803>Tm}XR3qpcKAS?(; i0w1b@5o$gI3kwSq0|N^)R2=LCxNAV>f<&M+7775nv8Ri^OMS fU_@3A@(?l~>;!~)U@pjM5c{EAu#Z7bB90FLl~D$7 literal 0 HcmV?d00001 diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_trainpathplot.bmp b/setup/data/tools/plugins/bitmaps/bobtoolz_trainpathplot.bmp new file mode 100644 index 0000000000000000000000000000000000000000..66537dc1220871be9339eeaae1726ef84e5e0dd3 GIT binary patch literal 324 zcmZ?rbzx)xgCGV51`P%V1_1^J27U$x21W)Bu=pni1_mK+2xezsU;yF&4F4G-BBB}E z+S(W-BqSL4`9V4u82$28PsB1_nPr0R~}zOK}LWyFmUmJ)PSTJxVU)0inyRQ iK=}}Hum+GkSP6*7zyQ{T#D|E21Yj%(4OIu>AV>gPkQ(0r literal 0 HcmV?d00001 diff --git a/setup/data/tools/plugins/bitmaps/bobtoolz_turnedge.bmp b/setup/data/tools/plugins/bitmaps/bobtoolz_turnedge.bmp new file mode 100644 index 0000000000000000000000000000000000000000..b72cb2aae6326e7c82b8be43f02ff38910d8eaf2 GIT binary patch literal 332 zcmZ?r^wiLijx Svx1ml%nahAyB{orOaK7u4-I<& literal 0 HcmV?d00001 diff --git a/setup/data/tools/plugins/bitmaps/ufoai_actorclip.bmp b/setup/data/tools/plugins/bitmaps/ufoai_actorclip.bmp new file mode 100644 index 0000000000000000000000000000000000000000..4a2887c6ae391bde30288a53fecd32ecf7e95051 GIT binary patch literal 494 zcmZ?reaFZE2LBis7&I6d7z7v?82A|&7#JBiz~Ubm7#M`OA=rq4fdPaW80r}q7#bKD z7+M$@7`hl380IoCFsx)?U|7$4Kms7XATPg|j-tE@h%bi*4E2?jwG^}!#ktr;M7hPq u4GkqEqznut#Thx7nOH!4bqzfQO<7?c4pCM?5FccUAyMuE*$q*RP!9kmrCQ+t literal 0 HcmV?d00001 diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level1.bmp b/setup/data/tools/plugins/bitmaps/ufoai_level1.bmp new file mode 100644 index 0000000000000000000000000000000000000000..80a4b2996e9dbcf76cec18e761c746dfb15c3fb2 GIT binary patch literal 198 zcmZ?rJ;ne5ehdr@8Vn2!0t^fc{0s~Xj0`Mbi3$b=1|e<;W@BJr0AY~C|Ns9PK+u-K smf?-a8-~BL{(^+Tm{AZ61Q4_U0|TQVh)*FFU|2rjLNhRcl?Vz#`A~UA QC|>|BF9=cswvB-S05~EMi~s-t literal 0 HcmV?d00001 diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level4.bmp b/setup/data/tools/plugins/bitmaps/ufoai_level4.bmp new file mode 100644 index 0000000000000000000000000000000000000000..3783a80341059f6a66047506e4eb1719d1b06c20 GIT binary patch literal 198 zcmZ?rJ;ne5ehdr@8Vn2!0t^fc{0s~Xj0`Mbi3$b=1|e<;W@BJr0AY~C|Ns9PK+u-K zmf?-a8-~BL{(^+Tm{AZ61dwR~MnNzil?EvXiGw8t7zG(X9Iz5FAt=ZQr3Ik0AOlz_ K#C(u$5C#A=91(s1 literal 0 HcmV?d00001 diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level5.bmp b/setup/data/tools/plugins/bitmaps/ufoai_level5.bmp new file mode 100644 index 0000000000000000000000000000000000000000..8f62851c5af230c3cbe61ba5279d7cd10a30775b GIT binary patch literal 198 zcmZ?rJ;ne5ehdr@8Vn2!0t^fc{0s~Xj0`Mbi3$b=1|e<;W@BJr0AY~C|Ns9PK+u-K zmf?-a8-~BL{(^+Tm{AZ61Q4_U1B0NT0HYuyh=7PQfS7`Uf+#dho&lqad7S PU;rxt2@8Up3bqdbHVF}a literal 0 HcmV?d00001 diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level6.bmp b/setup/data/tools/plugins/bitmaps/ufoai_level6.bmp new file mode 100644 index 0000000000000000000000000000000000000000..418fdd280dc849add3cc4d3d307e245e0ef77906 GIT binary patch literal 198 zcmZ?rJ;ne5ehdr@8Vn2!0t^fc{0s~Xj0`Mbi3$b=1|e<;W@BJr0AY~C|Ns9PK+u-K zmf?-a8-~BL{(^+Tm{AZ61dwP320=jqMnM5aFd@hwD98ZfW6&^pn0k;w5G^3hf`U+S Lkgy=gsbKp6C=U@^ literal 0 HcmV?d00001 diff --git a/setup/data/tools/plugins/bitmaps/ufoai_level7.bmp b/setup/data/tools/plugins/bitmaps/ufoai_level7.bmp new file mode 100644 index 0000000000000000000000000000000000000000..d82dab61c387a5f974bad9a52dde617aaf298b81 GIT binary patch literal 198 zcmZ?rJ;ne5ehdr@8Vn2!0t^fc{0s~Xj0`Mbi3$b=1|e<;W@BJr0AY~C|Ns9PK+u-K zmf?-a8-~BL{(^+Tm{AZ61dwP3K|w(fpMeoVgVpj!3<3-c4EziX42%pMVDS$O3=Bft5NyoAzyQMa4E78SVC=xq z%HYJ%#o)@YmLZH`9YYwydWLX@tqf5N+Zm!6b~3~;>}QB)IKU9kaF8K^;V?rY!)b<8 zhO-Q547V9_8SXITF+5}_V0gk%$ncDzh~X_m8N*kGDu(|I^$bado(u&R!3+f!Aq-{K z5e(I~F$@h32@I`H$qbV`a~Wp%6f(^5D`oiaFrQ&nXg$N)@J5EM(d`V|V>%gj#&$F8 zjqhVPoH&W$aMC1(Q>oJ#E@#bSxR$+u;c4+|hHo`H82;4nW%%E)pFsi&jGzF@m4I@M z2=j&5dAWr7G&NOp6%37xBqX@G8JL&_rKDx$C3Qf2K{g&vRxvGYHC26WBO_%r0JcZn mK#8A21Z)+UFQ+KOD9(c5Yv^eRaEK!KMj&&+ToT*~Q4auv4QE&Y literal 0 HcmV?d00001 diff --git a/setup/data/tools/plugins/bitmaps/ufoai_stepon.bmp b/setup/data/tools/plugins/bitmaps/ufoai_stepon.bmp new file mode 100644 index 0000000000000000000000000000000000000000..b73896fb33b9c59a10218f17683a2bfd4af40610 GIT binary patch literal 458 zcmZ?rJ;lfX2Dca(7&I6d7z7v?82A|&7#JBiz~Ubm7#M`OAy|`vfdPaWOu`xD?SmN@ z9I_Y~obwsvUE>)TTnZT&T#6VNT#FbK+>;m>+{+jkJgXQOylNO2ylWX4{F)dHgEAQy z0@@f9L(3T$LVFn$BkLI$;^#3iBrIUiPwiyTN$qBEO|N6n&z{8KSK7~DUonp%sA?*M zUF`~n@TU0;QEf{YVmena#CES@ukM^! zo-v3(fd&*nxgt=m2Bmy{Rwiz41}=6#`*^A5F0GU@$(%VC7N5z+ilV!P={wfx+}D1B2;x1{?261_sj` z3=C#B85qp&FxdH4GcZ^@WN-**U|_I(!QdF!%)nsvn!zckg@M8PJp+U7HwL$`ZU(pT zZUzRsp9~Cke;63-|1)?-Ph{|lp2XmrFpI%2aW+Fh@_dGvqU{WECA%3C%J(rORUT$Y zsX5NzkpG_{z2PiFM&o&g%;rlBSuIx>vRkh*WVc>pDC~K_P}uX3p=$bPhU%H$7#imP zXV8WMM<{@DwV_-`V)$ab(#)3nI`$wvAoc8uYAlWl{Gu?vrl7opqqU(qh;N1l^o+Po z3@p?&SQWK6x%h+_| Xu|XKb24N5zgh6Z&2C+dH#0Fsi_(Xk2 literal 0 HcmV?d00001 diff --git a/setup/data/tools/plugins/bt/bt-el1.txt b/setup/data/tools/plugins/bt/bt-el1.txt new file mode 100644 index 00000000..ccac5e6e --- /dev/null +++ b/setup/data/tools/plugins/bt/bt-el1.txt @@ -0,0 +1,17 @@ +common/areaportal +common/clip +common/clusterportal +common/cushion +common/donotenter +common/full_clip +common/hint +common/missileclip +common/nodraw +common/nodrawnonsolid +common/nodrop +common/noimpact +common/origin +common/trigger +common/weapclip +liquid +fog \ No newline at end of file diff --git a/setup/data/tools/plugins/bt/bt-el2.txt b/setup/data/tools/plugins/bt/bt-el2.txt new file mode 100644 index 00000000..e69de29b diff --git a/setup/data/tools/plugins/bt/door-tex-trim.txt b/setup/data/tools/plugins/bt/door-tex-trim.txt new file mode 100644 index 00000000..5211a98c --- /dev/null +++ b/setup/data/tools/plugins/bt/door-tex-trim.txt @@ -0,0 +1,5 @@ +base_support/support1rust +base_support/support1shiny +base_support/support2rust +base_support/wplat1_1 +base_support/plate2_5 \ No newline at end of file diff --git a/setup/data/tools/plugins/bt/door-tex.txt b/setup/data/tools/plugins/bt/door-tex.txt new file mode 100644 index 00000000..94b352f3 --- /dev/null +++ b/setup/data/tools/plugins/bt/door-tex.txt @@ -0,0 +1,10 @@ +base_door/shinymetaldoor +base_door/shinymetaldoor_outside +gothic_door/door02_bred +gothic_door/door02_bred2_shiny +gothic_door/door02_eblue2_shiny +gothic_door/door02_i_ornate5_fin +gothic_door/door02_j +gothic_door/door02_j3 +gothic_door/door02_j4 +gothic_door/door02_k2b \ No newline at end of file diff --git a/setup/data/tools/plugins/bt/tp_ent.txt b/setup/data/tools/plugins/bt/tp_ent.txt new file mode 100644 index 00000000..09488da9 --- /dev/null +++ b/setup/data/tools/plugins/bt/tp_ent.txt @@ -0,0 +1,14 @@ +{ + "entity" "misc_model" + + "offset" "-16" + + "model" "models/mapobjects/trees_sd/tree_a.md3" + "model" "models/mapobjects/trees_sd/tree_b.md3" + "model" "models/mapobjects/trees_sd/tree_c.md3" + "model" "models/mapobjects/trees_sd/tree_d.md3" + + "pitch" "-5" "5" + "yaw" "0" "360" + "scale" "1" "1.3" +} \ No newline at end of file diff --git a/setup/data/tools/q3data.qdt b/setup/data/tools/q3data.qdt new file mode 100644 index 00000000..ba30ee12 --- /dev/null +++ b/setup/data/tools/q3data.qdt @@ -0,0 +1,552 @@ +$aseconvert models/mapobjects/spotlamp/spotlamp_x.ase +$exit + + +$aseconvert models/weapons2/machinegun/machinegun.ase -weapon +$aseconvert models/weapons2/bfg/bfg.ase -weapon +$aseconvert models/weapons2/railgun/railgun.ase -weapon +$aseconvert models/weapons2/shotgun/shotgun.ase -weapon + +$aseconvert models/weapons2/meshes/chaingun.ase -weapon +$aseconvert models/weapons2/meshes/flamethrower.ase -weapon +$aseconvert models/weapons2/meshes/grapple.ase -weapon +$aseconvert models/weapons2/meshes/grenadel.ase -weapon +$aseconvert models/weapons2/meshes/lightning.ase -weapon +$aseconvert models/weapons2/meshes/plasma.ase -weapon +$aseconvert models/weapons2/meshes/railgun.ase -weapon +$aseconvert models/weapons2/meshes/ricochet.ase -weapon +$aseconvert models/weapons2/meshes/rocketl.ase -weapon +$aseconvert models/weapons2/meshes/shotgun.ase -weapon + + +$aseconvert models/mapobjects/chain1.ase +$aseconvert models/mapobjects/chain2.ase +$aseconvert models/mapobjects/chain3.ase +$aseconvert models/mapobjects/chain4.ase + +$exit + +$aseanimconvert models/players/light/bandolier/bandolier.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/light/brandon/4brandon.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/light/cash/4cash.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/light/doom/doom.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/light/shauna/shauna.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/medium/tim/4tim.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/medium/visor/4visor.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/medium/xian/4xian.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/medium/carmack/carmack.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/heavy/paulj/4paulj.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/heavy/brock/brock.ase -origin 0 0 24 -playerparms 75 138 140 1 + +$exit + +// note: playerparms are "skipStart skipEnd maxUpperFrames maxHeadFrames" +$aseanimconvert models/players/medium/visor/4visor.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/medium/visor/4visor.ase -lod 1 0 -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/medium/visor/4visor.ase -lod 2 0 -origin 0 0 24 -playerparms 75 138 140 1 + + + +$aseconvert models/powerups/ammo/backpack.ase + +$aseconvert models/weapons2/meshes/assault.ase -weapon +$aseconvert models/weapons2/meshes/chaingun.ase -weapon +$aseconvert models/weapons2/meshes/flamethrower.ase -weapon +$aseconvert models/weapons2/meshes/grapple.ase -weapon +$aseconvert models/weapons2/meshes/grenadel.ase -weapon +$aseconvert models/weapons2/meshes/lightning.ase -weapon +$aseconvert models/weapons2/meshes/plasma.ase -weapon +$aseconvert models/weapons2/meshes/railgun.ase -weapon +$aseconvert models/weapons2/meshes/ricochet.ase -weapon +$aseconvert models/weapons2/meshes/rocketl.ase -weapon +$aseconvert models/weapons2/meshes/shotgun.ase -weapon + +$aseconvert models/mapobjects/arenalogo.ase + +// +// talk sprite +// +$modelname sprites/balloon +$cd sprites +$spritebase -8 -8 16 16 +$spriteshader sprites/balloon3.tga + +// plasma ball sprite +$modelname sprites/plasma +$cd sprites +$spritebase -16 -16 32 32 +$spriteshader sprites/plasma1.tga +$spriteshader sprites/plasma2.tga + +// +// player models +// note: playerparms are "skipStart skipEnd maxUpperFrames maxHeadFrames" +// +$aseanimconvert models/players/light/bandolier/bandolier.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/light/brandon/4brandon.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/light/cash/4cash.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/light/doom/doom.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/light/shauna/shauna.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/medium/tim/4tim.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/medium/visor/4visor.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/medium/xian/4xian.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/medium/carmack/carmack.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/heavy/paulj/4paulj.ase -origin 0 0 24 -playerparms 75 138 140 1 +$aseanimconvert models/players/heavy/brock/brock.ase -origin 0 0 24 -playerparms 75 138 140 1 + +// +// weaphits +// +$modelname models/weaphits/bullet +$cd models/weaphits +$base bullet01.3ds +$frame bullet01.3ds +$frame bullet02.3ds +$frame bullet03.3ds +$frame bullet04.3ds +$frame bullet05.3ds +$frame bullet06.3ds +$skin bullet01.3ds +$skin bullet03.3ds +$skin bullet05.3ds + +$modelname models/weaphits/ring01 +$cd models/weaphits +$base ring01_1.3ds +$frame ring01_1.3ds +$frame ring01_2.3ds +$frame ring01_3.3ds +$frame ring01_4.3ds +$frame ring01_5.3ds +$frame ring01_6.3ds +$skin ring01_1.3ds +$skin ring01_3.3ds +$skin ring01_5.3ds + +$modelname models/weaphits/ring02 +$cd models/weaphits +$base ring02_1.3ds +$frame ring02_1.3ds +$frame ring02_2.3ds +$frame ring02_3.3ds +$frame ring02_4.3ds +$frame ring02_5.3ds +$frame ring02_6.3ds +$skin ring02_1.3ds +$skin ring02_3.3ds +$skin ring02_5.3ds + +$modelname models/weaphits/boomgra +$cd models/weaphits +$base boomgra1.3ds +$frame boomgra1.3ds +$frame boomgra2.3ds +$frame boomgra3.3ds +$frame boomgra4.3ds +$frame boomgra5.3ds +$frame boomgra6.3ds +$skin boomgra1.3ds +$skin boomgra3.3ds +$skin boomgra5.3ds + +$modelname models/weaphits/boom01 +$cd models/weaphits +$base boom01_1.3ds +$frame boom01_1.3ds +$frame boom01_2.3ds +$frame boom01_3.3ds +$frame boom01_4.3ds +$frame boom01_5.3ds +$frame boom01_6.3ds +$skin boom01_1.3ds +$skin boom01_3.3ds +$skin boom01_5.3ds + +$modelname models/weaphits/boom02 +$cd models/weaphits +$base boom02_1.3ds +$frame boom02_1.3ds +$frame boom02_2.3ds +$frame boom02_3.3ds +$frame boom02_4.3ds +$frame boom02_5.3ds +$frame boom02_6.3ds +$skin boom02_1.3ds +$skin boom02_3.3ds +$skin boom02_5.3ds + +$modelname models/weaphits/boom03 +$cd models/weaphits +$base boom03_1.3ds +$frame boom03_1.3ds +$frame boom03_2.3ds +$frame boom03_3.3ds +$frame boom03_4.3ds +$frame boom03_5.3ds +$frame boom03_6.3ds +$skin boom03_1.3ds +$skin boom03_3.3ds +$skin boom03_5.3ds + +$modelname models/weaphits/boom04 +$cd models/weaphits +$base boom04_1.3ds +$frame boom04_1.3ds +$frame boom04_2.3ds +$frame boom04_3.3ds +$frame boom04_4.3ds +$frame boom04_5.3ds +$frame boom04_6.3ds +$skin boom04_1.3ds +$skin boom04_3.3ds +$skin boom04_5.3ds + +$modelname models/weaphits/boom05 +$cd models/weaphits +$base boom05_1.3ds +$frame boom05_1.3ds +$frame boom05_2.3ds +$frame boom05_3.3ds +$frame boom05_4.3ds +$frame boom05_5.3ds +$frame boom05_6.3ds +$skin boom05_1.3ds +$skin boom05_3.3ds +$skin boom05_5.3ds + +// +// point powerups +// +$aseconvert models/powerups/points/small.ase +$aseconvert models/powerups/points/medium.ase +$aseconvert models/powerups/points/large.ase + +// +// ammo +// +$aseconvert models\powerups\ammo\bfgam.ASE +$aseconvert models\powerups\ammo\bfgam_1.ASE +$aseconvert models\powerups\ammo\bouncyam.ASE +$aseconvert models\powerups\ammo\bouncyam_1.ASE +$aseconvert models\powerups\ammo\carbineam.ASE +$aseconvert models\powerups\ammo\carbineam_1.ASE +$aseconvert models\powerups\ammo\flameam.ASE +$aseconvert models\powerups\ammo\flameam_1.ASE +$aseconvert models\powerups\ammo\grenadeam.ASE +$aseconvert models\powerups\ammo\grenadeam_1.ASE +$aseconvert models\powerups\ammo\lightningam.ASE +$aseconvert models\powerups\ammo\lightningam_1.ASE +$aseconvert models\powerups\ammo\machinegunam.ASE +$aseconvert models\powerups\ammo\machinegunam_1.ASE +$aseconvert models\powerups\ammo\plasmaam.ASE +$aseconvert models\powerups\ammo\plasmaam_1.ASE +$aseconvert models\powerups\ammo\railgunam.ASE +$aseconvert models\powerups\ammo\railgunam_1.ASE +$aseconvert models\powerups\ammo\rocketam.ASE +$aseconvert models\powerups\ammo\rocketam_1.ASE +$aseconvert models\powerups\ammo\shotgunam.ASE +$aseconvert models\powerups\ammo\shotgunam_1.ASE + +$aseconvert models/powerups/ammo/backpack.ase + +// +// missiles +// +$modelname models/ammo/plasma/plasma +$cd models/ammo/plasma +$base plasma1.3ds +$frame plasma1.3ds +$skin plasma1.3ds + +$modelname models/ammo/laser/laser +$cd models/ammo/laser +$base laser1.3ds +$frame laser1.3ds +$skin laser1.3ds + +$modelname models/ammo/rocket/rocket +$cd models/ammo/rocket +$base rocket1.3ds +$frame rocket1.3ds +$skin rocket1.3ds +$skin rocket2.3ds + +$aseconvert models/ammo/grenade1.ase +$aseconvert models/explosions/smoke2.ase + +// +// map objects +// +$aseconvert models/mapobjects/ceilinglamp1.ase +$aseconvert models/mapobjects/ceilinglamp2.ase +$aseconvert models/mapobjects/chain1.ase +$aseconvert models/mapobjects/chain2.ase +$aseconvert models/mapobjects/chain3.ase +$aseconvert models/mapobjects/chain4.ase +$aseconvert models/mapobjects/crux.ase +$aseconvert models/mapobjects/floorlamp1.ase +$aseconvert models/mapobjects/floorlamp2.ase +$aseconvert models/mapobjects/hook.ase +$aseconvert models/mapobjects/impale.ase +$aseconvert models/mapobjects/standinglamp1.ase +$aseconvert models/mapobjects/standinglamp2.ase +$aseconvert models/mapobjects/standinglamp3.ase +$aseconvert models/mapobjects/walllamp1.ase +$aseconvert models/mapobjects/walllamp2.ase +$aseconvert models/mapobjects/walllamp3.ase + + +// +// objects +// +$aseconvert models/objects/dmspot.ase -origin 0 0 24 +$aseconvert models/objects/box01.ase + +// +// weapons +// +$aseconvert models/weapons2/meshes/assault.ase -weapon +$aseconvert models/weapons2/meshes/bfg.ase -weapon +$aseconvert models/weapons2/meshes/chaingun.ase -weapon +$aseconvert models/weapons2/meshes/flamethrower.ase -weapon +$aseconvert models/weapons2/meshes/grapple.ase -weapon +$aseconvert models/weapons2/meshes/grenadel.ase -weapon +$aseconvert models/weapons2/meshes/lightning.ase -weapon +$aseconvert models/weapons2/meshes/plasma.ase -weapon +$aseconvert models/weapons2/meshes/railgun.ase -weapon +$aseconvert models/weapons2/meshes/ricochet.ase -weapon +$aseconvert models/weapons2/meshes/rocketl.ase -weapon +$aseconvert models/weapons2/meshes/shotgun.ase -weapon + +// +// blood +// +$modelname models/weaphits/blood +$cd models/weaphits +$spritebase -16 -16 32 32 +$spriteshader models/weaphits/blood201.tga +$spriteshader models/weaphits/blood202.tga +$spriteshader models/weaphits/blood203.tga +$spriteshader models/weaphits/blood204.tga +$spriteshader models/weaphits/blood205.tga + + +// +// missiles +// +$modelname models/ammo/plasma/plasma +$cd models/ammo/plasma +$base plasma1.3ds +$frame plasma1.3ds +$skin plasma1.3ds + +$modelname models/ammo/laser/laser +$cd models/ammo/laser +$base laser1.3ds +$frame laser1.3ds +$skin laser1.3ds + + +$modelname models/ammo/rocket/rocket +$cd models/ammo/rocket +$base rocket1.3ds +$frame rocket1.3ds +$skin rocket1.3ds +$skin rocket2.3ds + + +// weaphits + +$modelname models/weaphits/bullet +$cd models/weaphits +$base bullet01.3ds +$frame bullet01.3ds +$frame bullet02.3ds +$frame bullet03.3ds +$frame bullet04.3ds +$frame bullet05.3ds +$frame bullet06.3ds +$skin bullet01.3ds +$skin bullet03.3ds +$skin bullet05.3ds + +$modelname models/weaphits/ring01 +$cd models/weaphits +$base ring01_1.3ds +$frame ring01_1.3ds +$frame ring01_2.3ds +$frame ring01_3.3ds +$frame ring01_4.3ds +$frame ring01_5.3ds +$frame ring01_6.3ds +$skin ring01_1.3ds +$skin ring01_3.3ds +$skin ring01_5.3ds + +$modelname models/weaphits/ring02 +$cd models/weaphits +$base ring02_1.3ds +$frame ring02_1.3ds +$frame ring02_2.3ds +$frame ring02_3.3ds +$frame ring02_4.3ds +$frame ring02_5.3ds +$frame ring02_6.3ds +$skin ring02_1.3ds +$skin ring02_3.3ds +$skin ring02_5.3ds + +$modelname models/weaphits/boomgra +$cd models/weaphits +$base boomgra1.3ds +$frame boomgra1.3ds +$frame boomgra2.3ds +$frame boomgra3.3ds +$frame boomgra4.3ds +$frame boomgra5.3ds +$frame boomgra6.3ds +$skin boomgra1.3ds +$skin boomgra3.3ds +$skin boomgra5.3ds + +$modelname models/weaphits/boom01 +$cd models/weaphits +$base boom01_1.3ds +$frame boom01_1.3ds +$frame boom01_2.3ds +$frame boom01_3.3ds +$frame boom01_4.3ds +$frame boom01_5.3ds +$frame boom01_6.3ds +$skin boom01_1.3ds +$skin boom01_3.3ds +$skin boom01_5.3ds + +$modelname models/weaphits/boom02 +$cd models/weaphits +$base boom02_1.3ds +$frame boom02_1.3ds +$frame boom02_2.3ds +$frame boom02_3.3ds +$frame boom02_4.3ds +$frame boom02_5.3ds +$frame boom02_6.3ds +$skin boom02_1.3ds +$skin boom02_3.3ds +$skin boom02_5.3ds + +$modelname models/weaphits/boom03 +$cd models/weaphits +$base boom03_1.3ds +$frame boom03_1.3ds +$frame boom03_2.3ds +$frame boom03_3.3ds +$frame boom03_4.3ds +$frame boom03_5.3ds +$frame boom03_6.3ds +$skin boom03_1.3ds +$skin boom03_3.3ds +$skin boom03_5.3ds + +$modelname models/weaphits/boom04 +$cd models/weaphits +$base boom04_1.3ds +$frame boom04_1.3ds +$frame boom04_2.3ds +$frame boom04_3.3ds +$frame boom04_4.3ds +$frame boom04_5.3ds +$frame boom04_6.3ds +$skin boom04_1.3ds +$skin boom04_3.3ds +$skin boom04_5.3ds + +$modelname models/weaphits/boom05 +$cd models/weaphits +$base boom05_1.3ds +$frame boom05_1.3ds +$frame boom05_2.3ds +$frame boom05_3.3ds +$frame boom05_4.3ds +$frame boom05_5.3ds +$frame boom05_6.3ds +$skin boom05_1.3ds +$skin boom05_3.3ds +$skin boom05_5.3ds + + +// +// armor +// +$aseconvert models/powerups/armor/armor_red.ase +$aseconvert models/powerups/armor/armor_yel.ase +$aseconvert models/powerups/armor/armor_grn.ase +$aseconvert models/powerups/armor/shard.ase +$aseconvert models/powerups/armor/shard_sphere.ase +$aseconvert models/powerups/armor/shard_sphere_1.ase + +// +// health +// +$aseconvert models/powerups/health/small.ase +$aseconvert models/powerups/health/small_1.ase +$aseconvert models/powerups/health/medium.ase +$aseconvert models/powerups/health/medium_1.ase +$aseconvert models/powerups/health/large.ase +$aseconvert models/powerups/health/large_1.ase +$aseconvert models/powerups/health/mega.ase +$aseconvert models/powerups/health/mega_1.ase + +// +// holdable powerups +// +$aseconvert models/powerups/holdable/ringodeth.ase +$aseconvert models/powerups/holdable/medkit.ase +$aseconvert models/powerups/holdable/teleporter.ase + +// +// instant powerups +// +$aseconvert models/powerups/instant/enviro.ase +$aseconvert models/powerups/instant/enviro_1.ase +$aseconvert models/powerups/instant/enviro_ring.ase +$aseconvert models/powerups/instant/enviro_ring_1.ase +$aseconvert models/powerups/instant/flight.ase +$aseconvert models/powerups/instant/flight_1.ase +$aseconvert models/powerups/instant/flight_ring.ase +$aseconvert models/powerups/instant/flight_ring_1.ase +$aseconvert models/powerups/instant/haste.ase +$aseconvert models/powerups/instant/haste_1.ase +$aseconvert models/powerups/instant/haste_ring.ase +$aseconvert models/powerups/instant/haste_ring_1.ase +$aseconvert models/powerups/instant/invis.ase +$aseconvert models/powerups/instant/invis_1.ase +$aseconvert models/powerups/instant/invis_ring.ase +$aseconvert models/powerups/instant/invis_ring_1.ase +$aseconvert models/powerups/instant/scan.ase +$aseconvert models/powerups/instant/scan_1.ase +$aseconvert models/powerups/instant/scan_ring.ase +$aseconvert models/powerups/instant/scan_ring_1.ase +$aseconvert models/powerups/instant/quad.ase +$aseconvert models/powerups/instant/quad_1.ase +$aseconvert models/powerups/instant/quad_ring.ase +$aseconvert models/powerups/instant/quad_ring_1.ase +$aseconvert models/powerups/instant/regen.ase +$aseconvert models/powerups/instant/regen_1.ase +$aseconvert models/powerups/instant/regen_ring.ase +$aseconvert models/powerups/instant/regen_ring_1.ase + +$exit + +// +// maps +// +$maps test_box test_items mirror mirror2 + + +// +// misc +// +$file q3default.cfg + +