Skip to content

glKarin/etqw

Repository files navigation

ETQWDOOM3

Enemy Territory: Quake Wars on DOOM3 GPL OpenGLES/GLSL


Not supported

  • MegaTexture
  • Collision testing multi-threading
  • All ARB/CG type shader source
  • GUIs on model
  • Some shaders
  • [-] Environment lighting
  • [-] Occlusion query
  • [-] ASCII file parsing(if binary file missing)
  • [-] Atmosphere rendering
  • Cinematic and bik video
  • ...

Bugs

  • [-] Postprocess view effect
  • Some vehicles AAS error
  • BSE
  • Fonts on GUIs
  • OK in game command GUIs by mouse clicking
  • Multiplayer game
  • Formatter text
  • ...

Changes

  • All dds files decoding by software for OpenGLES
  • Always using DOOM3's interaction shader
  • Playing with bots only
  • Using command map texture instead of terrain mega texture: megatextures.mtr megatextures_sdk.mtr
  • Only support GLSL(100 es/300 es) shader source: renderprogs

Source code

Game SDK

IDA Hex-ray Decompiled

Raven BSE

GPL

Game resource


Binary file structure

Extension Origin extension Description Class Structure
aasb aas_player/aas_vehicle Area Awareness System idAASFileLocal aasb
cacheb Global parser token cache cacheb
clustb Model clust for map terrain. e.g. tree, grass clustb
cmb cm Map collision model idCollisionModelManagerLocal cmb
declb def/gui... Compressed Decl(All idDecl) idDeclManagerLocal declb
md5b md5mesh MD5Mesh v11 model(include LODs, GUI surfaces) idRenderModelMD5 md5b
mega mega Mega texture mega
modelb lwo/ase Static model idRenderModelStatic modelb
procb proc Processed map render model idRenderWorldLocal procb

New cvars

CVar Type Default Description Flag Range Scope Remark Platform
harm_r_fontDefaultScale Float 0.27 default font scale in GUIs ARCHIVE Engine/Renderer All
harm_r_clearPostprocessBuffer Bool 0 clear postprocess buffer image on every draw ARCHIVE Engine/Renderer All
harm_r_printShaderSource Bool 0 print external converted shader source ARCHIVE Engine/Renderer All
harm_r_skipAreaAmbient Bool 0 skip areas ambient rendering before draw interactions Engine/Renderer All
harm_r_builtinAreaAmbient Bool 0 using built-in global illumination for area ambient rendering Engine/Renderer All
harm_r_areaAmbientScale Float 1.0 area ambient scale ARCHIVE Engine/Renderer All
harm_r_areaAmbientAlpha Float 1.0 area ambient alpha ARCHIVE Engine/Renderer All
harm_r_skipImposter Bool 0 skip imposter rendering for static model Engine/Renderer All
harm_r_skipVisDistCheck Bool 0 skip entity visible distance check Engine/Renderer All
harm_r_visDistCheckType Integer 0 entity visible distance check type 0 = bounds, 1 = origin, 2 = sphere Engine/Renderer All
harm_r_drawVisDistCheck Bool 0 draw entity visible distance check Engine/Renderer All
harm_r_visDistLightFallOff Float 0.2 light fade by view distance ARCHIVE Engine/Renderer All
harm_r_visDistEntityFallOff Float 0.2 entity fade by view distance ARCHIVE Engine/Renderer All
harm_r_skipVisDistFade Bool 0 skip visible distance fade ARCHIVE Engine/Renderer All
harm_com_autoLogin String login username automatic when game start ARCHIVE Engine/Framework All

New commands

Command Description Usage Scope Remark Platform
loadRenderProgram load external render program force Engine/Renderer All
listRenderPrograms list loaded external render program Engine/Renderer All
reloadRenderPrograms reload external render program Engine/Renderer All
imageProgramStringToCompressedFileName print compressed image name from raw image program Engine/Renderer All
declbToText convert declb to text files Engine/Framework All
exportDeclSource export decl source text files Engine/Framework All
exportDeclExpandSource export decl expand source text files Engine/Framework All
exportRenderPrograms export all render programs Engine/Framework All

Compiling

CMake

cmake -DBUILD_ETQW=ON -DBUILD_D3=OFF -DBUILD_Q4=OFF -DBUILD_PREY=OFF -DTOOLS=OFF -DDEDICATED=OFF CMakeLists.txt

Defined macros

  • _SPLASHDAMAGE: patches for engine
  • _ETQW: patches for game
  • _MODEL_OBJ: obj model support

Run

  1. Put base/renderprogs, base/materials into game base folder(etqwbase on Android).
  2. Execute ETQW +set r_multithread 0 +set r_useShadowMapping 1 +set r_forceShadowMapsOnAlphaTestedSurfaces 1 +set si_pure 0 +set net_serverAllowServerMod 1 +set s_useOpenAL 1.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors