The GtkRadiant sources as originally released under the GPL license.
13
setup/PluginSDK/BuildGtkSrc
Normal file
@@ -0,0 +1,13 @@
|
||||
#!/bin/sh
|
||||
# temporary..
|
||||
|
||||
# grab the gtk devel package
|
||||
# FIXME: for win32 SDK only
|
||||
echo "Updating src/"
|
||||
echo "NOTE: check we are using the latest gtk dev packages"
|
||||
echo "NOTE: we are not putting our patched versions in"
|
||||
rm -rf src
|
||||
unzip /cygdrive/c/Download/Gtk-20001023/glib-dev-20001023.zip
|
||||
unzip /cygdrive/c/Download/Gtk-20001023/gtk+-dev-20000722.zip
|
||||
unzip /cygdrive/c/Download/Gtk-20001023/libiconv-dev-20001007.zip
|
||||
unzip /cygdrive/c/Download/Gtk-20001023/extralibs-dev-20001007.zip
|
||||
53
setup/PluginSDK/BuildSDK
Normal file
@@ -0,0 +1,53 @@
|
||||
#!/bin/sh
|
||||
|
||||
# what I use to run this script on my win32 box:
|
||||
# have cygwin, perl (ActiveState) and the cygwin zip utility
|
||||
# for zip: http://www.hirmke.de/software/develop/gnuwin32/cygwin/porters/Hirmke_Michael/GNUWin32-links.html#zip-2.3%20(cygwin1.1)
|
||||
|
||||
# FIXME: I'd like to have this same script used for both platforms
|
||||
# for the SDK we recreate a smaller tree and only put the stuff we want
|
||||
# what potentially changes across platforms is the binaries and the src/ subtree for gtk stuff
|
||||
|
||||
# proceed in order:
|
||||
|
||||
# include directory for all plugin API
|
||||
mkdir GtkRadiant
|
||||
mkdir GtkRadiant/include
|
||||
rm -rf ./GtkRadiant/include/*
|
||||
echo "Copying GtkRadiant API headers"
|
||||
cp ../../include/* ./GtkRadiant/include
|
||||
|
||||
# now fill in the plugins menu:
|
||||
# copy common, textool and the sample plugin
|
||||
mkdir GtkRadiant
|
||||
mkdir GtkRadiant/plugins
|
||||
mkdir GtkRadiant/plugins/common
|
||||
mkdir GtkRadiant/plugins/textool
|
||||
mkdir GtkRadiant/plugins/sample
|
||||
rm -rf ./GtkRadiant/plugins/*
|
||||
echo "Copying TexTool"
|
||||
cp -R ../../plugins/textool ./GtkRadiant/plugins/textool
|
||||
cp -R ../../plugins/common ./GtkRadiant/plugins/common
|
||||
echo "Copying Sample plugin"
|
||||
cp -R ../../plugins/sample ./GtkRadiant/plugins/sample
|
||||
|
||||
# get gtkradiant binary (you know you want it)
|
||||
# FIXME: for win32 SDK only
|
||||
#cp ../radiant/Release/Q3Radiant.exe GtkRadiant.exe
|
||||
|
||||
# grab the gtk devel package
|
||||
# FIXME: for win32 SDK only
|
||||
echo "Updating src/"
|
||||
echo "NOTE: check we are using the latest gtk dev packages"
|
||||
echo "NOTE: we are not putting our patched versions in"
|
||||
rm -rf src
|
||||
unzip /cygdrive/c/Download/Gtk-20001023/glib-dev-20001023.zip
|
||||
unzip /cygdrive/c/Download/Gtk-20001023/gtk+-dev-20000722.zip
|
||||
unzip /cygdrive/c/Download/Gtk-20001023/libiconv-dev-20001007.zip
|
||||
unzip /cygdrive/c/Download/Gtk-20001023/extralibs-dev-20001007.zip
|
||||
# grab the src/build directory, we use it with the cygwin makefiles
|
||||
cp -R ../../../src/build src
|
||||
|
||||
# build the SDK
|
||||
#echo "Check the sample/ directory is clean"
|
||||
#zip -r PluginSDK.zip src private sample README.html GtkRadiant.exe
|
||||
6
setup/PluginSDK/BuildZip
Normal file
@@ -0,0 +1,6 @@
|
||||
#!/bin/sh
|
||||
# temporary..
|
||||
|
||||
# build the SDK zip
|
||||
rm PluginSDK.zip
|
||||
zip -r PluginSDK.zip src GtkRadiant README.html
|
||||
171
setup/PluginSDK/README.html
Normal file
@@ -0,0 +1,171 @@
|
||||
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
<meta name="GENERATOR" content="Mozilla/4.73 [en] (Win98; U) [Netscape]">
|
||||
<title>Q3Radiant plugin SDK
|
||||
</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<center><b><font size=+2>GtkRadiant plugin SDK</font></b></center>
|
||||
<center><b><font size=+2>http://www.gtkradiant.com</font></b></center>
|
||||
|
||||
<p><br>
|
||||
<div align=right><b><font size=+2>Version: <font color="#FF0000">GtkRadiant
|
||||
1.1-TA-beta</font></font></b>
|
||||
<br><b><font size=+2><font color="#000000">Last updated: </font><font color="#FF0000">01/14/2001</font></font></b></div>
|
||||
|
||||
<p><br>
|
||||
<hr WIDTH="100%"><font size=+2>What do I have?</font>
|
||||
|
||||
<br><font size=+1><tt>GtkRadiant/include/</tt>: Radiant plugin API
|
||||
headers</font>
|
||||
|
||||
<br><font size=+1><tt>GtkRadiant/plugins/sample/</tt>: an empty plugin nutshell,
|
||||
handy to start a new one (NOTE: a cygwin makefile for Sample is also
|
||||
provided)</font>
|
||||
|
||||
<br><font size=+1><tt>GtkRadiant/plugins/textool/</tt>: TexTool plugin
|
||||
source code</font>
|
||||
|
||||
<br><font size=+1><tt>src/</tt>: Gtk headers and libraries for win32</font>
|
||||
|
||||
<p> <font size=+2>A Word about Gtk:</font>
|
||||
|
||||
<br><font size=+1>GtkRadiant is using the <a href="http://www.gtk.org"
|
||||
target="_new">Gtk toolkit</a> for all the user interface. There's a specific
|
||||
page for the <a href="http://user.sgic.fi/~tml/gimp/win32/" target="_new">Gtk on
|
||||
win32</a>. If you are going to write a plugin for GtkRadiant, we recommend you
|
||||
use Gtk, but it's not a required feature. You can write plugins using the native
|
||||
windows API or even VB. Don't hesitate to ask for help on the <a
|
||||
href="http://www.egroups.com/register?referer=/subscribe/radiant-plugins"
|
||||
target="_new">plugin mailing list</a> or to drop by on irc.telefragged.com
|
||||
#qeradiant</font></p>
|
||||
|
||||
<p><font size=+2>Plugin basics:</font>
|
||||
<br><font size=+2>main features available to plugins:</font>
|
||||
<ul>
|
||||
<li>
|
||||
<font size=+1>Manipulate MAP data: read and write brushes, patches, epairs and entities</font></li>
|
||||
|
||||
<li>
|
||||
<font size=+1>Override the BSP menu to process your own building commands</font></li>
|
||||
|
||||
<li>
|
||||
<font size=+1>Read / Write project settings epairs</font></li>
|
||||
|
||||
<li>
|
||||
<font size=+1>Use OpenGL to draw in the 2D/3D view, or in your own plugin
|
||||
windows</font></li>
|
||||
|
||||
<li>
|
||||
<font size=+1>Use listeners to catch events in Radiant (like a change of
|
||||
texture or brush select / deselect)</font></li>
|
||||
|
||||
<li>
|
||||
<font size=+1>Use listeners to listen for window events (for mouse interaction
|
||||
in the 2D view)</font></li>
|
||||
|
||||
<li>
|
||||
<font size=+1>Create new plugin entities that show up in the Radiant window,
|
||||
which you can draw yourself and handle the user interaction</font></li>
|
||||
|
||||
<li>
|
||||
<font size=+1>Use the Radiant internal parser to hook your own MAP format
|
||||
changes for plugin entities</font></li>
|
||||
|
||||
<li>
|
||||
<font size=+1>Access polygon and texture information on the current selected
|
||||
face</font></li>
|
||||
|
||||
<li>
|
||||
<font size=+1>Override the texture / shader code to provide your own texture
|
||||
formats and shader system</font></li>
|
||||
|
||||
<li>
|
||||
<font size=+1>Add new surface properties, and change the MAP format accordingly</font></li>
|
||||
</ul>
|
||||
<font size=+2>overall structure of a plugin:</font>
|
||||
<br><font size=+1>A plugin is a DLL (dynamic loading library) that exposes
|
||||
some API to Radiant. Plugins must be put in the plugins/ directory, they
|
||||
get loaded at startup by Radiant. Any plugin has a few required entry points
|
||||
in order to get loaded correctly:</font>
|
||||
<ul>
|
||||
<li>
|
||||
<font size=+1><tt>QERPlug_Init</tt> is the first entry point called, used
|
||||
for initialization and sending back the plugin name that appears in the
|
||||
console</font></li>
|
||||
|
||||
<li>
|
||||
<font size=+1><tt>QERPlug_GetName</tt> returns the name of the plugin as
|
||||
it appears in the plugin menu</font></li>
|
||||
|
||||
<li>
|
||||
<font size=+1><tt>QERPlug_GetCommandList</tt> returns a list describing
|
||||
the items in the plugin submenu</font></li>
|
||||
|
||||
<li>
|
||||
<font size=+1><tt>QERPlug_GetFuncTable</tt> returns the address of the
|
||||
_QERFuncTable_1 of the plugin. After Radiant got the pointer to the function
|
||||
table it will fill it and the plugin is able to call into the editor.</font></li>
|
||||
|
||||
<li>
|
||||
<font size=+1><tt>QERPlug_Dispatch</tt> is called when the user hits a
|
||||
command in the plugin menu. The plugin is then free to process.</font></li>
|
||||
</ul>
|
||||
<font size=+2>the function table and interfaces:</font>
|
||||
<br><font size=+1>Instead of exporting entry points, Radiant fills in function
|
||||
pointer tables. The main and required function table is <tt>_QERFuncTable_1</tt>.
|
||||
Each plugin must have it and let Radiant fill it. Some additional or specialized
|
||||
functionalities can be accessed with other tables like <tt>_QERQglTable</tt>
|
||||
for GL stuff. These have to be requested to Radiant using <tt>_QERFuncTable_1::m_pfnRequestInterface</tt>
|
||||
(see <tt>TexTool</tt> for an example). Each additional function table has
|
||||
a "globally unique identifier" (<tt>QERQglTable_GUID</tt> for GL stuff)
|
||||
that's used to identify the interface across plugins.</font>
|
||||
<p><font size=+1>NOTE: some function tables are used by Radiant and must
|
||||
be filled by the plugin (ie. they work in reverse compared to usual ones).
|
||||
In this case the plugin must export an additional entry point <tt>int WINAPI
|
||||
QERPlug_RequestInterface( REFGUID, LPVOID );</tt></font>
|
||||
<p><font size=+2>virtual classes:</font>
|
||||
<br><font size=+1>some stuff is better represented by an abstract C++ class.
|
||||
For those with COM knowledge, it's just a very lightweight COM way of doing
|
||||
things. These classes have very basic reference counting through <tt>IncRef()</tt>
|
||||
and <tt>DecRef()</tt> .. you are supposed to increment or decrement the
|
||||
reference count each time you store or release a pointer to these classes,
|
||||
otherwise they could get unexpectedly erased and you would be very very
|
||||
sorry. The <tt>IListener</tt> class in <tt>IMessaging.h</tt> can be implemented
|
||||
by the plugin and handed over to Radiant to listen for events. See <tt>TexTool</tt>
|
||||
for examples.</font>
|
||||
<br>
|
||||
|
||||
<p><font size=+2>More stuff:</font>
|
||||
|
||||
<br><font size=+1>If you need more information or if you want new features for
|
||||
plugins, see the source code for <tt>TexTool</tt> and <tt>Curry</tt>.
|
||||
<tt>TexTool</tt> source comes with the plugin SDK, and <tt>Curry</tt> source is
|
||||
available <a href="http://curry.sourceforge.net">from their web site</a>. You
|
||||
can <a
|
||||
href="http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/?cvsroot=curry">browse it
|
||||
online</a> from <a href="http://sourceforge.net/project/?group_id=1263">the
|
||||
project page</a>. <a
|
||||
href="http://sourceforge.net/project/?group_id=5326">PrtView</a> has neat code
|
||||
samples on how to draw in the 2D views or camera window. These two plugins are
|
||||
under GPL licensing. The dedicated place to talk about plugin coding is the <a
|
||||
href="http://www.egroups.com/group/radiant-plugins">plugins-coding mailing
|
||||
list</a> ... see you there. You may also get an updated list of the plugins for
|
||||
Radiant <a href="http://plugins.qeradiant.com">on our dedicated web
|
||||
site</a>.<br>
|
||||
|
||||
Update: you can also have a look to the <a
|
||||
href="http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/?cvsroot=pk3man "
|
||||
target="_new">pk3man source</a>.</font>
|
||||
|
||||
<p><font size=+2>Conclusion:</font>
|
||||
<br><font size=+1>this document is intended as a quickstart for potential
|
||||
plugin writers. I hope it meets it's objective. It's not a complete and
|
||||
systematic documentation, I doubt there will be one ever unless someone
|
||||
decides to do it. Feel free to send me contributions to this document.
|
||||
<a href="mailto:timo@qeradiant.com">Send feedback to me</a>.</font>
|
||||
</body>
|
||||
</html>
|
||||
33
setup/PluginSDK/TODO
Normal file
@@ -0,0 +1,33 @@
|
||||
Plugin SDK for GtkRadiant
|
||||
TODO list
|
||||
|
||||
win32:
|
||||
write script to generate the plugin SDK
|
||||
sample dll
|
||||
documentation
|
||||
headers
|
||||
gtk libs (devel package + our stuff on top)
|
||||
|
||||
linux:
|
||||
same thing more or less..
|
||||
except we rely on the user for his Gtk installation
|
||||
|
||||
put some docs, links to curry and pk3man for source
|
||||
|
||||
[15:23] <leo> you don't need to do:
|
||||
[15:23] <leo> #ifdef __linux__
|
||||
[15:23] <leo> extern "C" char* QERPlug_Init (void* hApp, GtkWidget* pMainWidget)
|
||||
[15:23] <leo> #else
|
||||
[15:23] <leo> //LPCSTR __declspec(dllexport) QERPlug_Init(HMODULE hApp, GtkWidget* pMainWidget)
|
||||
[15:23] <leo> extern "C" LPCSTR WINAPI QERPlug_Init(HMODULE hApp, GtkWidget* pMainWidget)
|
||||
[15:23] <leo> #endif
|
||||
[15:23] <TTimo> yes that needs cleaning
|
||||
[15:23] <TTimo> is it yet?
|
||||
[15:23] <leo> extern "C" char* WINAPI QERPlug_Init works
|
||||
[15:24] <TTimo> way cool
|
||||
[15:24] <leo> some plugins have it
|
||||
[15:24] <leo> just thought I'd mention as you're writing the SDK
|
||||
|
||||
need to put TexTool source in as well..
|
||||
|
||||
put a f* updated binary of gktradiant in there
|
||||
1795
setup/changelog.txt
Normal file
139
setup/common/setup.pm
Normal file
@@ -0,0 +1,139 @@
|
||||
#!/usr/bin/env perl
|
||||
#
|
||||
# Common setup functions for building release packages
|
||||
#
|
||||
|
||||
# Gef - Jan3 2002
|
||||
# - Initial framework for migrating setup/release building to perl
|
||||
|
||||
# TODO:
|
||||
# Gef - Cleaner handling of cons builds, currently doesn't catch cons errors
|
||||
|
||||
package setup;
|
||||
|
||||
# Package constructor
|
||||
sub new
|
||||
{
|
||||
my $this = {};
|
||||
bless $this;
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
# Replace in file parm-1; parm-2 with parm-3
|
||||
sub replace
|
||||
{
|
||||
shift;
|
||||
my $file = shift(@_);
|
||||
my $search = shift(@_);
|
||||
my $replace_with = shift(@_);
|
||||
|
||||
# need to use | instead of / with sed since the variables will contain /'s which confuse it
|
||||
system("cat '$file' | sed -e 's|$search|$replace_with|g' > '$file.tmp'");
|
||||
system("cp '$file.tmp' '$file'; rm '$file.tmp'");
|
||||
}
|
||||
|
||||
# Not exactly common (between win32/linux), but useful here all the same
|
||||
sub cons_build
|
||||
{
|
||||
shift;
|
||||
my $BUILD_DIR = shift(@_);
|
||||
my $BUILD_CMD = shift(@_);
|
||||
# use a direct system() call since syscmd doesnt catch cons errors
|
||||
system("cd $BUILD_DIR; $BUILD_CMD");
|
||||
}
|
||||
|
||||
# Maintain a list of errors that have occured
|
||||
sub collate_error
|
||||
{
|
||||
#shift;
|
||||
my $err_type = shift(@_); # unused
|
||||
my $err_command = shift(@_);
|
||||
|
||||
@errors[$err_count++] = "$err_command";
|
||||
}
|
||||
|
||||
# Output the list of errors stored
|
||||
sub print_errors
|
||||
{
|
||||
my $count = 0;
|
||||
|
||||
if($err_count gt 0)
|
||||
{
|
||||
if($err_count > 25)
|
||||
{
|
||||
print("$err_count Errors!! Ouch, looks like something screwed up.\n");
|
||||
}
|
||||
else
|
||||
{
|
||||
print("$err_count Error(s) encountered\n");
|
||||
}
|
||||
|
||||
for($count; $count lt $err_count; $count++)
|
||||
{
|
||||
if(@errors[$count] ne "")
|
||||
{
|
||||
print("-> @errors[$count]\n");
|
||||
}
|
||||
}
|
||||
}
|
||||
#else
|
||||
#{
|
||||
# print("No errors encountered.\n");
|
||||
#}
|
||||
}
|
||||
|
||||
# A wrapper for system() calls that catches errors
|
||||
sub syscmd
|
||||
{
|
||||
shift;
|
||||
my $command_string = shift(@_);
|
||||
|
||||
# todo: identify multiple commands (commands split with ;'s)
|
||||
# todo: catch cons errors (cons doesn't return a value)
|
||||
system("$command_string");
|
||||
my $sysretval = $?;
|
||||
|
||||
if(($sysretval gt 0) && ($sysretval lt 257))
|
||||
{
|
||||
@cmdlist = split(" ", $command_string);
|
||||
if(@cmdlist[0] eq "cp")
|
||||
{
|
||||
collate_error("copy", $command_string);
|
||||
}
|
||||
elsif(@cmdlist[0] eq "mv")
|
||||
{
|
||||
collate_error("move", $command_string);
|
||||
}
|
||||
elsif(@cmdlist[0] eq "cons")
|
||||
{
|
||||
collate_error("cons", $command_string);
|
||||
}
|
||||
elsif(@cmdlist[0] eq "cd")
|
||||
{
|
||||
collate_error("changed dir", $command_string);
|
||||
}
|
||||
elsif(@cmdlist[0] eq "mkdir")
|
||||
{
|
||||
collate_error("make dir", $command_string);
|
||||
}
|
||||
elsif(@cmdlist[0] eq "cat")
|
||||
{
|
||||
collate_error("cat", $command_string);
|
||||
}
|
||||
elsif(@cmdlist[0] eq "rm")
|
||||
{
|
||||
collate_error("remove", $command_string);
|
||||
}
|
||||
else
|
||||
{
|
||||
collate_error("unhandled", $command_string);
|
||||
}
|
||||
}
|
||||
|
||||
return $sysretval;
|
||||
}
|
||||
|
||||
|
||||
# Close package
|
||||
1;
|
||||
202
setup/credits.html
Normal file
@@ -0,0 +1,202 @@
|
||||
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
<title>Radiant - Credits</title>
|
||||
<style type="text/css">
|
||||
<!--
|
||||
a:link { color: #9999FF ; text-decoration: none ; }
|
||||
a:visited { color: #6666AA ; text-decoration: none ; }
|
||||
a:hover { color: #6666FF ; text-decoration: none ; }
|
||||
h3 { color: #FFFFFF ; }
|
||||
b { color: #CCCCCC ; }
|
||||
//-->
|
||||
</style>
|
||||
</head>
|
||||
<body text="#BBBBBB" bgcolor="#000000">
|
||||
|
||||
<div align="center">
|
||||
<table width="95%" cellpadding="0" cellspacing="0" border="0"><tr><td>
|
||||
<div align="center">
|
||||
<table width="100%" cellpadding="0" cellspacing="0" border="0">
|
||||
<tr><td bgcolor="#003366" align="center">
|
||||
<h3>Credits</h3>
|
||||
</td></tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<ul>
|
||||
<p>
|
||||
<b>Loki Games</b><br>
|
||||
<a href="http://www.lokigames.com" target="_new">Loki games</a> was the instigator of the project.
|
||||
Leonardo Zide wrote the initial port to Gtk+, which is based on the win32 version of Q3Radiant by
|
||||
<a href="http://www.idsoftware.com">Id Software</a>.
|
||||
<ul>
|
||||
· Leonardo Zide <a href="mailto:leonardo@centroin.com.br"><leonardo@centroin.com.br></a><br>
|
||||
· QA: Mike Phillips<br>
|
||||
· Overall coordination: Bernd Kreimeier<br>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
|
||||
<p>
|
||||
<b>Id software</b><br>
|
||||
<a href="http://www.idsoftware.com">Id software</a> is actively supporting
|
||||
the project by providing resources, advice and developer time.
|
||||
</p>
|
||||
|
||||
|
||||
<b>QERadiant.com</b><br>
|
||||
<a href="http://www.qeradiant.com">QERadiant.com</a> is the main entity
|
||||
behind the editor. The team has been handling editor developement, website
|
||||
work and documentation for several years now. Many people on the team have
|
||||
been involved in several areas, plugin developpement, contributing patches,
|
||||
doing documentation (.. and fixing my bad html)<br>
|
||||
<BR>
|
||||
<ul>
|
||||
|
||||
<p>
|
||||
<b>Project leader:</b>
|
||||
<br>- TTimo <a href="mailto:ttimo@idsoftware.com"><ttimo@idsoftware.com></a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<b>Editor developers and contributors:</b>
|
||||
<br>- Arnout "RR2DO2" van Meer <a href="mailto:rr2do2@q3f.com"><rr2do2@q3f.com></a>
|
||||
<br>- David Olofson <a href="mailto:david@olofson.net"><david@olofson.net></a>
|
||||
<br>- Dominic "Hydra" Clifton <a href="mailto:hydrasworld@hotmail.com"><hydrasworld@hotmail.com></a>
|
||||
<br>- Geoff "Gef" Davis <a href="mailto:gefdavis@dingoblue.net.au"><gefdavis@dingoblue.net.au></a>
|
||||
<br>- Geoffrey DeWan <a href="mailto:gdewan@prairienet.org"><gdewan@prairienet.org></a>
|
||||
<br>- Gordon "djbob" Biggans <a href="mailto:gbiggans@uglab.eee.strath.ac.uk"><gbiggans@uglab.eee.strath.ac.uk></a>
|
||||
<br>- Jan Paul "MrElusive" van Waveren
|
||||
<br>- Jonas
|
||||
<br>- Leonardo Zide (initial ports and general developement) <a href="mailto:leonardo@centroin.com.br"><leonardo@centroin.com.br></a>
|
||||
<br>- LordHavoc - Q1 support work
|
||||
<br>- MarsMattel <a href="mailto:icky.gildea@cableinet.co.uk"><icky.gildea@cableinet.co.uk></a>
|
||||
<br>- Michael Schlueter
|
||||
<br>- Nurail
|
||||
<br>- Pablo "^Fishman" Zurita <a href="mailto:pabloz@qeradiant.com"><pabloz@qeradiant.com></a>
|
||||
<br>- Randy "ydnar" Reddig <a href="mailto:ydnar@shaderlab.com"><ydnar@shaderlab.com></a>
|
||||
<br>- Ryan "Riant" Lahaie-Cohen <a href="rmarc@sympatico.ca"><rmarc@sympatico.ca></a>
|
||||
<br>- Robert Duffy
|
||||
<br>- SCDS_reyalP <a href="mailto:rfm@redshift.com"><rfm@redshift.com></a>
|
||||
<br>- Shawn "EvilTypeGuy" Walker <a href="mailto:eviltypeguy@qeradiant.com"><eviltypeguy@qeradiant.com></a>
|
||||
<br>- SmallPileOfGibs <a href="mailto:spog@planetquake.com"><spog@planetquake.com></a>
|
||||
<br>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<b>ET GamePack:</b>
|
||||
<br>- <a href="http://www.splashdamage.com">SplashDamage</a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<b>OSX Port:</b>
|
||||
<br>- X-Man
|
||||
<br>- <a href="http://fink.sourceforge.net">fink team</a>
|
||||
<br>- Anders Gudmundson
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<b>Q3Map 2.0 and general Q3Map improvements:</b>
|
||||
<br>- Randy "ydnar" Reddig <a href="mailto:ydnar@shaderlab.com"><ydnar@shaderlab.com></a>
|
||||
<br>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<b>Picmodel library:</b>
|
||||
<br>- SeaW0lf
|
||||
<br>- Randy "ydnar" Reddig <a href="mailto:ydnar@shaderlab.com"><ydnar@shaderlab.com></a>
|
||||
<br>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<b>Setup media: sample maps, shader scripts, md3s, entities.def:</b>
|
||||
<br>- AstroCreep
|
||||
<br>- Jean-Francois "Eutectic" Groleau
|
||||
<br>- Primer
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<b>Game Packs Help</b>
|
||||
<br>- <a href="http://www.ravensoft.com">Raven Software</a> - James Monroe & Mike Majernik
|
||||
<br> Jedi Academy game pack
|
||||
<br>- Ryan "Riant" Lahaie-Cohen <a href="rmarc@sympatico.ca"><rmarc@sympatico.ca></a>
|
||||
<br> Jedi Knight II, Star Trek Voyager: Elite Force, and Soldier of Fortune 2 game packs
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<b>Half-Life Module</b>
|
||||
<br>- Dominic "Hydra" Clifton <a href="mailto:hydrasworld@hotmail.com"><hydrasworld@hotmail.com></a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<b>BobToolz plugin:</b>
|
||||
<br>- Gordon "djbob" Biggans <a href="mailto:gbiggans@uglab.eee.strath.ac.uk"><gbiggans@uglab.eee.strath.ac.uk></a>
|
||||
<br>- MarsMattel
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<b>Curry plugin Team:</b>
|
||||
<br>- Mike "mickey" Jackman
|
||||
<br>- Tim "Maj" Rennie
|
||||
<br>- William "SmallPileOfGibs" Joseph
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<b>PrtView plugin, various bug fixes and q3map guru:</b>
|
||||
<br>- Geoffrey DeWan
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<b>Gensurf plugin</b>
|
||||
<br>- David Hyde
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<b>2D background image plugin</b>
|
||||
<br>- SCDS_Reyalp
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<b>Web staff:</b>
|
||||
<br>- Dave "Bargle" Koenig and Jason "Wolfen" Spencer
|
||||
<br>- Geoff "Gef" Davis <a href="mailto:gefdavis@dingoblue.net.au"><gefdavis@dingoblue.net.au></a>
|
||||
<br>- Tristan "Jherax" Blease <a href="mailto:jherax@qeradiant.com"><jherax@qeradiant.com></a>
|
||||
<br>- neo279, Erukian, space, ButtMonkey
|
||||
<br>- Thanks to John Hutton, AstroCreep and W2k for web help
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<b>FAQ:</b>
|
||||
<br>- Equim and Wex
|
||||
<br>
|
||||
</p>
|
||||
|
||||
</ul>
|
||||
|
||||
<br>
|
||||
|
||||
<p>
|
||||
Thanks to everyone on the beta mailing list and irc.telefragged.com #qeradiant
|
||||
for testing and feedback.
|
||||
<br><br>
|
||||
Updated icons by AstroCreep
|
||||
<br>Bitch-slapping by raYGunn
|
||||
</p>
|
||||
Special thanks to <a href="http://www.gtk.org" target="_new">The Gtk+ project</a> and specially <a href="mailto:tml@iki.fi">Tor Lillqvist</a>, maintainer of the <a href="http://www.gimp.org/win32/">win32 port of Gtk+</a>.
|
||||
</ul>
|
||||
|
||||
<div align="center">
|
||||
<table width="100%" cellpadding="0" cellspacing="0" border="0">
|
||||
<tr><td bgcolor="#003366" align="center">
|
||||
|
||||
</td></tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
BIN
setup/data/tools/bitmaps/black.bmp
Normal file
|
After Width: | Height: | Size: 248 B |
BIN
setup/data/tools/bitmaps/brush_flipx.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/brush_flipy.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/brush_flipz.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/brush_rotatex.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/brush_rotatey.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/brush_rotatez.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/cap_bevel.bmp
Normal file
|
After Width: | Height: | Size: 154 B |
BIN
setup/data/tools/bitmaps/cap_cylinder.bmp
Normal file
|
After Width: | Height: | Size: 156 B |
BIN
setup/data/tools/bitmaps/cap_endcap.bmp
Normal file
|
After Width: | Height: | Size: 154 B |
BIN
setup/data/tools/bitmaps/cap_ibevel.bmp
Normal file
|
After Width: | Height: | Size: 154 B |
BIN
setup/data/tools/bitmaps/cap_iendcap.bmp
Normal file
|
After Width: | Height: | Size: 154 B |
BIN
setup/data/tools/bitmaps/curve_cap.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/dontselectcurve.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/dontselectmodel.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/ellipsis.bmp
Normal file
|
After Width: | Height: | Size: 108 B |
BIN
setup/data/tools/bitmaps/file_open.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/file_save.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/icon.bmp
Normal file
|
After Width: | Height: | Size: 630 B |
BIN
setup/data/tools/bitmaps/logo.bmp
Normal file
|
After Width: | Height: | Size: 47 KiB |
BIN
setup/data/tools/bitmaps/modify_edges.bmp
Normal file
|
After Width: | Height: | Size: 316 B |
BIN
setup/data/tools/bitmaps/modify_faces.bmp
Normal file
|
After Width: | Height: | Size: 316 B |
BIN
setup/data/tools/bitmaps/modify_vertices.bmp
Normal file
|
After Width: | Height: | Size: 316 B |
BIN
setup/data/tools/bitmaps/noFalloff.bmp
Normal file
|
After Width: | Height: | Size: 1.6 KiB |
BIN
setup/data/tools/bitmaps/notex.bmp
Normal file
|
After Width: | Height: | Size: 4.2 KiB |
BIN
setup/data/tools/bitmaps/patch_bend.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/patch_drilldown.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/patch_insdel.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/patch_showboundingbox.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/patch_weld.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/patch_wireframe.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/popup_selection.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/scalelockx.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/scalelocky.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/scalelockz.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/select_mouseresize.bmp
Normal file
|
After Width: | Height: | Size: 200 B |
BIN
setup/data/tools/bitmaps/select_mouserotate.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/select_mousescale.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/select_mousetranslate.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/selection_csgmerge.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/selection_csgsubtract.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/selection_makehollow.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/selection_selectcompletetall.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/selection_selectinside.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/selection_selectpartialtall.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/selection_selecttouching.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/shadernotex.bmp
Normal file
|
After Width: | Height: | Size: 4.2 KiB |
BIN
setup/data/tools/bitmaps/show_entities.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/splash.bmp
Normal file
|
After Width: | Height: | Size: 293 KiB |
BIN
setup/data/tools/bitmaps/texture_lock.bmp
Normal file
|
After Width: | Height: | Size: 774 B |
BIN
setup/data/tools/bitmaps/textures_popup.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/view_cameratoggle.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/view_cameraupdate.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/view_change.bmp
Normal file
|
After Width: | Height: | Size: 126 B |
BIN
setup/data/tools/bitmaps/view_clipper.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/view_cubicclipping.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/view_entity.bmp
Normal file
|
After Width: | Height: | Size: 238 B |
BIN
setup/data/tools/bitmaps/white.bmp
Normal file
|
After Width: | Height: | Size: 248 B |
BIN
setup/data/tools/bitmaps/window1.bmp
Normal file
|
After Width: | Height: | Size: 614 B |
BIN
setup/data/tools/bitmaps/window2.bmp
Normal file
|
After Width: | Height: | Size: 614 B |
BIN
setup/data/tools/bitmaps/window3.bmp
Normal file
|
After Width: | Height: | Size: 614 B |
BIN
setup/data/tools/bitmaps/window4.bmp
Normal file
|
After Width: | Height: | Size: 614 B |
92
setup/data/tools/gl/lighting_DBS_XY_Z_arbfp1.cg
Normal file
@@ -0,0 +1,92 @@
|
||||
/// ============================================================================
|
||||
/*
|
||||
Copyright (C) 2004 Robert Beckebans <trebor_7@users.sourceforge.net>
|
||||
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;
|
||||
}
|
||||
78
setup/data/tools/gl/lighting_DBS_XY_Z_arbvp1.cg
Normal file
@@ -0,0 +1,78 @@
|
||||
/// ============================================================================
|
||||
/*
|
||||
Copyright (C) 2004 Robert Beckebans <trebor_7@users.sourceforge.net>
|
||||
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;
|
||||
}
|
||||
86
setup/data/tools/gl/lighting_DBS_omni_fp.glp
Normal file
@@ -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
|
||||
73
setup/data/tools/gl/lighting_DBS_omni_fp.glsl
Normal file
@@ -0,0 +1,73 @@
|
||||
/// ============================================================================
|
||||
/*
|
||||
Copyright (C) 2004 Robert Beckebans <trebor_7@users.sourceforge.net>
|
||||
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;
|
||||
}
|
||||
|
||||
410
setup/data/tools/gl/lighting_DBS_omni_vp.glp
Normal file
@@ -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
|
||||
58
setup/data/tools/gl/lighting_DBS_omni_vp.glsl
Normal file
@@ -0,0 +1,58 @@
|
||||
/// ============================================================================
|
||||
/*
|
||||
Copyright (C) 2004 Robert Beckebans <trebor_7@users.sourceforge.net>
|
||||
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 );
|
||||
}
|
||||
47
setup/data/tools/gl/zfill_arbfp1.cg
Normal file
@@ -0,0 +1,47 @@
|
||||
/// ============================================================================
|
||||
/*
|
||||
Copyright (C) 2003 Robert Beckebans <trebor_7@users.sourceforge.net>
|
||||
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;
|
||||
}
|
||||
49
setup/data/tools/gl/zfill_arbvp1.cg
Normal file
@@ -0,0 +1,49 @@
|
||||
/// ============================================================================
|
||||
/*
|
||||
Copyright (C) 2003 Robert Beckebans <trebor_7@users.sourceforge.net>
|
||||
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;
|
||||
}
|
||||
19
setup/data/tools/gl/zfill_fp.glp
Normal file
@@ -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
|
||||
29
setup/data/tools/gl/zfill_fp.glsl
Normal file
@@ -0,0 +1,29 @@
|
||||
/// ============================================================================
|
||||
/*
|
||||
Copyright (C) 2004 Robert Beckebans <trebor_7@users.sourceforge.net>
|
||||
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);
|
||||
}
|
||||
384
setup/data/tools/gl/zfill_vp.glp
Normal file
@@ -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
|
||||
35
setup/data/tools/gl/zfill_vp.glsl
Normal file
@@ -0,0 +1,35 @@
|
||||
/// ============================================================================
|
||||
/*
|
||||
Copyright (C) 2004 Robert Beckebans <trebor_7@users.sourceforge.net>
|
||||
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;
|
||||
}
|
||||
11
setup/data/tools/global.xlink
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1" standalone="yes"?>
|
||||
<!-- generated by Radiant setup, modify at your own risks -->
|
||||
<links>
|
||||
<item name="Web Links & Misc" url="links.htm"/>
|
||||
<item name="GtkRadiant Bugzilla - Report Bug" url="http://zerowing.idsoftware.com/bugzilla/index.cgi"/>
|
||||
<item name="MapCenter's GtkRadiant Forum" url="http://www.map-center.com/modules.php?name=Forums&file=viewforum&f=8"/>
|
||||
<item name="q3map2 handbook (web)" url="http://shaderlab.com/q3map2/manual/default.htm"/>
|
||||
<item name="ChangeLog" url="changelog.txt"/>
|
||||
<item name="Q3Map2 ChangeLog" url="changelog.q3map2.txt"/>
|
||||
<item name="Credits" url="credits.html"/>
|
||||
</links>
|
||||
552
setup/data/tools/q3data.qdt
Normal file
@@ -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
|
||||
|
||||
|
||||
49
setup/license.rtf
Normal file
@@ -0,0 +1,49 @@
|
||||
{\rtf1\ansi\deff0{\fonttbl{\f0\fnil\fcharset0 Courier New;}}
|
||||
{\*\generator Msftedit 5.41.15.1503;}\viewkind4\uc1\pard\lang2057\f0\fs20\tab LIMITED USE SOFTWARE LICENSE AGREEMENT\par
|
||||
\par
|
||||
This Limited Use Software License Agreement (the "Agreement") is a legal agreement between you, the end-user, and Id Software, Inc. ("ID"). BY CONTINUING THE INSTALLATION OF THIS SOFTWARE (THE "SOFTWARE"), BY LOADING OR RUNNING THE SOFTWARE, OR BY PLACING OR COPYING THE SOFTWARE ONTO YOUR COMPUTER HARD DRIVE, COMPUTER RAM OR OTHER STORAGE, YOU ARE AGREEING TO BE BOUND BY THE TERMS OF THIS AGREEMENT. \par
|
||||
\par
|
||||
1.\tab Grant of License. Subject to the terms and provisions of this Agreement, ID grants to you the non-exclusive and limited right to use the Software only in executable or object code form. The term "Software" includes all elements of the Software. You are not receiving any ownership or proprietary right, title or interest in or to the Software or the copyrights, trademarks, or other rights related thereto. For purposes of the first sentence of this section, "use" means loading the Software into RAM and/or onto computer hard drive, as well as installation of the Software on a hard disk or other storage device and means the uses permitted in section 3. hereinbelow. You agree that the Software will not be shipped, transferred or exported into any country in violation of the U.S. Export Administration Act (or any other law governing such matters) by you or anyone at your direction and that you will not utilize and will not authorize anyone to utilize, in any other manner, the Software in violation of any applicable law. The Software shall not be downloaded or otherwise exported or reexported into (or to a national or resident of) any country to which the U.S. has embargoed goods or to anyone or into any country who/which are prohibited, by applicable law, from receiving such property.\par
|
||||
\par
|
||||
2.\tab Prohibitions. You, whether directly or indirectly, shall not do any of the following acts:\par
|
||||
\par
|
||||
a.\tab rent the Software;\par
|
||||
\par
|
||||
b.\tab sell the Software;\par
|
||||
\par
|
||||
c.\tab lease or lend the Software;\par
|
||||
\par
|
||||
d.\tab distribute the Software (except as permitted by section 3. hereinbelow);\par
|
||||
\par
|
||||
e.\tab in any other manner and through any medium whatsoever commercially exploit the Software or use the Software for any commercial purpose;\par
|
||||
\par
|
||||
f.\tab disassemble, reverse engineer, decompile, modify or alter the Software;\par
|
||||
\par
|
||||
g.\tab translate the Software;\par
|
||||
\par
|
||||
h.\tab reproduce or copy the Software (except as permitted by section 3. hereinbelow);\par
|
||||
\par
|
||||
i.\tab publicly display the Software; \par
|
||||
\par
|
||||
j.\tab prepare or develop derivative works based upon the Software; or \par
|
||||
\par
|
||||
k.\tab remove or alter any legal notices or other markings or legends, such as trademark and copyright notices, affixed on or within the Software.\par
|
||||
\par
|
||||
\par
|
||||
3.\tab Permitted Uses. So long as this Agreement accompanies each copy you make of the Software, and so long as you fully comply, at all times, with this Agreement, ID grants to you the non-exclusive and limited right to distribute copies of the Software free of charge for non-commercial purposes by electronic means only and the non-exclusive and limited right to use the Software to create your own modifications for operation only with the full version of the software game QUAKE III ARENA; provided, however, you shall not make any modifications unless and until you have agreed to be bound by the terms of the LIMITED USE SOFTWARE LICENSE AGREEMENT which accompanies the full version of QUAKE III ARENA. Other than the electronic copies permitted above, you may make only the following copies of the Software: (i) you may copy the Software onto your computer hard drive; (ii) you may copy the Software from your computer hard drive into your computer RAM; and (iii) you may make one (1) "back-up" or archival copy of the Software on one (1) hard disk. You shall not use, copy or distribute the Software in any infringing manner or in any manner which violates any law or third party right and you shall not distribute the Software together with any material which infringes against any third party right or which is libelous, defamatory, obscene, false, misleading, or otherwise illegal or unlawful. ID reserves all rights not granted in this Agreement, including, without limitation, all rights to ID's trademarks. You shall not commercially distribute the Software.\par
|
||||
\par
|
||||
4.\tab Intellectual Property Rights. The Software and all copyrights, trademarks and all other conceivable intellectual property rights related to the Software are owned by ID and are protected by United States copyright laws, international treaty provisions and all applicable law, such as the Lanham Act. You must treat the Software like any other copyrighted material, as required by 17 U.S.C. S101 et seq. and other applicable law. You agree to use your best efforts to see that any user of the Software licensed hereunder complies with this Agreement. You agree that you are receiving a copy of the Software by license only and not by sale and that the "first sale" doctrine of 17 U.S.C. S109 does not apply to your receipt or use of the Software.\par
|
||||
\par
|
||||
5.\tab NO WARRANTIES. ID DISCLAIMS ALL WARRANTIES, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE WITH RESPECT TO THE SOFTWARE. ID DOES NOT WARRANT THAT THE OPERATION OF THE SOFTWARE WILL BE UNINTERRUPTED OR ERROR FREE OR THAT THE SOFTWARE WILL MEET YOUR SPECIFIC REQUIREMENTS. ADDITIONAL STATEMENTS, WHETHER ORAL OR WRITTEN, DO NOT CONSTITUTE WARRANTIES BY ID AND SHOULD NOT BE RELIED UPON. THIS SECTION 5. SHALL SURVIVE CANCELLATION OR TERMINATION OF THIS AGREEMENT.\par
|
||||
\par
|
||||
6.\tab Governing Law, Venue, Indemnity and Liability Limitation. This Agreement shall be construed in accordance with and governed by the applicable laws of the State of Texas and applicable United States federal law. Copyright and other proprietary matters will be governed by United States laws and international treaties. Exclusive venue for all litigation regarding this Agreement shall be in Dallas County, Texas and you agree to submit to the jurisdiction of the courts in Dallas, Texas for any such litigation. You agree to indemnify, defend and hold harmless ID and ID's officers, employees, directors, agents, licensees (excluding you), successors and assigns from and against all losses, lawsuits, damages, causes of action and claims relating to and/or arising from your breach of this Agreement and/or your distribution or other use of the Software. You agree that your unauthorized use of the Software, or any part thereof, may immediately and irreparably damage ID such that ID could not be adequately compensated solely by a monetary award and that at ID's option ID shall be entitled to an injunctive order, in addition to all other available remedies including a monetary award, appropriately restraining and/or prohibiting such unauthorized use without the necessity of ID posting bond or other security. IN ANY CASE, ID AND ID'S OFFICERS, EMPLOYEES, DIRECTORS, AGENTS, LICENSEES, SUBLICENSEES, SUCCESSORS AND ASSIGNS SHALL NOT BE LIABLE FOR LOSS OF DATA, LOSS OF PROFITS, LOST SAVINGS, SPECIAL, INCIDENTAL, CONSEQUENTIAL, INDIRECT, PUNITIVE OR OTHER SIMILAR DAMAGES ARISING FROM ANY ALLEGED CLAIM FOR BREACH OF WARRANTY, BREACH OF CONTRACT, NEGLIGENCE, STRICT PRODUCT LIABILITY, OR OTHER LEGAL THEORY EVEN IF ID OR ITS AGENTS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES OR EVEN IF SUCH DAMAGES ARE FORESEEABLE, OR LIABLE FOR ANY CLAIM BY ANY OTHER PARTY. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so the above limitation or exclusion may not apply to you. This Section 6. shall survive cancellation or termination of this Agreement.\par
|
||||
\par
|
||||
7.\tab U.S. Government Restricted Rights. To the extent applicable, the United States Government shall only have those rights to use the Software as expressly stated and expressly limited and restricted in this Agreement, as provided in 48 C.F.R. SS 227.7201 through 227.7204, inclusive.\par
|
||||
\par
|
||||
8.\tab General Provisions. Neither this Agreement nor any part or portion hereof shall be assigned or sublicensed by you. ID may assign its rights under this Agreement in ID's sole discretion. Should any provision of this Agreement be held to be void, invalid, unenforceable or illegal by a court of competent jurisdiction, the validity and enforceability of the other provisions shall not be affected thereby. If any provision is determined to be unenforceable by a court of competent jurisdiction, you agree to a modification of such provision to provide for enforcement of the provision's intent, to the extent permitted by applicable law. Failure of ID to enforce any provision of this Agreement shall not constitute or be construed as a waiver of such provision or of the right to enforce such provision. Immediately upon your failure to comply with or breach of any term or provision of this Agreement, THIS AGREEMENT AND YOUR LICENSE SHALL AUTOMATICALLY TERMINATE, WITHOUT NOTICE, AND ID MAY PURSUE ALL RELIEF AND REMEDIES AGAINST YOU WHICH ARE AVAILABLE UNDER APPLICABLE LAW AND/OR THIS AGREEMENT. In the event this Agreement is terminated, you shall have no right to use the Software, in any manner, and you shall immediately destroy all copies of the Software in your possession, custody or control.\par
|
||||
\par
|
||||
YOU ACKNOWLEDGE THAT YOU HAVE READ THIS AGREEMENT, YOU UNDERSTAND THIS AGREEMENT, AND UNDERSTAND THAT BY CONTINUING THE INSTALLATION OF THE SOFTWARE, BY LOADING OR RUNNING THE SOFTWARE, OR BY PLACING OR COPYING THE SOFTWARE ONTO YOUR COMPUTER HARD DRIVE OR RAM, YOU AGREE TO BE BOUND BY THE TERMS AND CONDITIONS OF THIS AGREEMENT. YOU FURTHER AGREE THAT, EXCEPT FOR WRITTEN SEPARATE AGREEMENTS BETWEEN ID AND YOU, THIS AGREEMENT IS A COMPLETE AND EXCLUSIVE STATEMENT OF THE RIGHTS AND LIABILITIES OF THE PARTIES HERETO. THIS AGREEMENT SUPERSEDES ALL PRIOR ORAL AGREEMENTS, PROPOSALS OR UNDERSTANDINGS, AND ANY OTHER COMMUNICATIONS BETWEEN ID AND YOU RELATING TO THE SUBJECT MATTER OF THIS AGREEMENT.\par
|
||||
\par
|
||||
\par
|
||||
}
|
||||
| ||||