Hosting and domain costs until October 2024 have been generously sponsored by dumptruck_ds. Thank you!
Editing Engine getting started
From Quake Wiki
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
===Editing your own Quake engine=== | ===Editing your own Quake engine=== | ||
* Get [http://www.mingw.org MinGW] or [http://msdn.microsoft.com/visualc/ buy Visual C++] | * Get [http://www.mingw.org MinGW] or [http://msdn.microsoft.com/visualc/ buy Visual C++] | ||
* Dowload whatever you want engine sources | * Dowload whatever you want engine sources | ||
* '''Suggestion''': | * '''Suggestion''': | ||
− | ** [http://tomaz.quakesrc.org/q/files/Clean.zip CleanSrc] | + | ** [http://tomaz.quakesrc.org/q/files/Clean.zip CleanSrc] simple |
− | ** [[ | + | ** [[QMB]] [http://www.flyingsaucepan.com/QMB (web)] - another good start |
− | ** [[ | + | ** [[TomazQuake]] [http://tomaz.quakesrc.org/q/ (web)] - for TQ clones |
− | ** [[DarkPlaces]] [http://www.icculus.org/twilight/darkplaces/ (web)] - | + | ** [[DarkPlaces]] [http://www.icculus.org/twilight/darkplaces/ (web)] - for level wizardry coders and huge enginemods |
− | ** [[FuhQuake]] [http://www.fuhquake.net/ (web)] - | + | ** [[FuhQuake]] [http://www.fuhquake.net/ (web)] - great starting point for QuakeWorld |
* Unzip | * Unzip | ||
* Open the *.dsw file (VC++) or the makefile (gcc/[http://www.mingw.org/ MinGW]) | * Open the *.dsw file (VC++) or the makefile (gcc/[http://www.mingw.org/ MinGW]) | ||
Line 35: | Line 13: | ||
* Recompile ( VC: build button, "make" command for gcc/mingw) | * Recompile ( VC: build button, "make" command for gcc/mingw) | ||
* If the build failed... | * If the build failed... | ||
− | ** Use your | + | ** Use your proyect *.s files? -> then you have to build these with gas, also included often. Or [http://www.quakesrc.org/forum/viewtopic.php?t=148&highlight=assembler+quake+build remove these and subst by c] |
− | ** | + | ** Its your proyect for other compiler? (darkplaces run for both, vc an gcc, but others only run for vc (badly written) ) |
− | ** Ask at [http:// | + | ** Ask at [http://www.quakesrc.org QuakeSRC] |
* [[Test Engine]] | * [[Test Engine]] | ||
===Understanding the code structure=== | ===Understanding the code structure=== | ||
− | This is a | + | This is a list of source files and a list of some of the things done in them. |
*cl_ - client files (demo playback, input, temp entities) | *cl_ - client files (demo playback, input, temp entities) | ||
Line 48: | Line 26: | ||
**_main - assorted client functions | **_main - assorted client functions | ||
**_parse - server command parsing | **_parse - server command parsing | ||
− | **_tent - temp | + | **_tent - temp entitie parsing and beam parsing |
*sv_ - server files (physics, collision detection, movement) | *sv_ - server files (physics, collision detection, movement) | ||
Line 57: | Line 35: | ||
*net_ - network files<br> | *net_ - network files<br> | ||
− | ** | + | **basicly convert quake client/server packets to be sent over a transport protocal like tcp or ipx, as well as network server/client stuff |
*pr_ - qc virtual machine (runs progs.dat) | *pr_ - qc virtual machine (runs progs.dat) | ||
Line 70: | Line 48: | ||
**_model - map and model loading | **_model - map and model loading | ||
**_rlight - dynamic lights | **_rlight - dynamic lights | ||
− | **_screen - | + | **_screen - statis bar, console etc drawing |
**_sprite - sprite drawing | **_sprite - sprite drawing | ||
**_vidnt - video init functions, and other startup functions | **_vidnt - video init functions, and other startup functions | ||
Line 87: | Line 65: | ||
**console - console text control (calls functions from gl_screen to draw) | **console - console text control (calls functions from gl_screen to draw) | ||
**cvar - cvar functions | **cvar - cvar functions | ||
− | **common - common low level | + | **common - common low level functons (string compairs, file stuff) |
[[Category:DarkPlaces]] | [[Category:DarkPlaces]] |