ezQuake 3.5-alpha20 (21st March 2019)
Pre-release
Pre-release
meag
released this
21 Mar 22:50
·
21 commits
to meag/renderer
since this release
READ FIRST
Major rendering engine update, expect lots of bugs, DO NOT USE for important games. It has had very limited testing and isn't ready yet.
Source-code if you want to build on other systems is available here, process to build is:
git clone https://github.com/meag/ezquake-source new-renderer
cd new-renderer
git checkout meag/renderer
make clean && CLASSIC_OPENGL_ONLY=1 make -j3
make clean && MODERN_OPENGL_ONLY=1 make -j3
Official changelog and individual 3.5 version changelogs moved to here
Lots of changes to classic in this version - started adding GLSL rendering to classic renderer for instance, it also uses texture arrays for lightmaps. Might have more issues on particular cards or configs than usual.
Changes/fixes in latest release
- Proportional fonts: fix loading on Windows (download freetype.dll and put in same directory as ezquake.exe)
- Proportional fonts: loads .ttf by default and looks in system directories for files
- Proportional fonts:
fontlist
enumerates fonts available on system - dopeskillz: if r_fastturb set, lava in
pkeg1
gets random colours from the map (-glsl only?) - tuna: crash on multi-renderer build when entering map (was compiling programs for inactive renderers)
- tuna: green lines on menu screen when no cursor texture (fixed rendering of lines & polygons in hud)
- classic: request explicit OpenGL versions (4.3-compat, 3.2-compat, any)
- hud: combine polygon/line-drawing programs with image-rendering
- hud:
score_bar
attributes can have formatting applied (%<10r>T
etc) - .md3/.mdl: add special cases for ng/sng to not lerp back to the frame 0 when firing stops
- .md3/.mdl: block lerping of vertices if they come from behind the player
- .md3: support outlining of models
- ciscon: font loading broken on linux, should be defining EZ_FREETYPE_SUPPORT_STATIC if linking freetype
- ciscon: if proportional font loaded, "pushes my speed number to the right unless i set hud_speed_proportional 1"
-
/hud_speed_text_align 0
hides the text value (as per documentation) - lordlame: netgraph not rendered in hud (possibly tuna's line-rendering problem)
Todo list for next build
- dog_sacrifice:
in 3.5 does the text wrap on hud_notify not work?
- fourier:
known bug about Russian text not rendered(when trying to input it) in 3.5a20?
- meag: fixed bug where state not fully reset on vid_restart
- mushi: viewsize 80 etc looks odd (border not cleared - tracked down to a missing backtile image... should clear to black in this case)
- ciscon: @meag hud_speed2 no longer has colored meter
- ciscon: so it appears if i switch to the new renderer and then back i get twice the framerate with the old renderer (or just a vid_restart it would seem)
- ciscon: if you're using the nquake pk3, gamma breaks unless you set
/gl_luma_textures 0
- ciscon: fyi, flashblend breaks on the individual glsl/std builds if the new particle engine isn't initialized and the individual explosion images don't exist
- ciscon/r00k:
/gl_powerupshells_cull
to place the powerupshell behind the model - dirtbox: "i don't think
cfg_backup 1
is working ezQuake 3.5 alpha" - dopeskillz: reports crashes when viewing qtv, nothing to replicate so far, looking into it
- praxismo: join dm2 server as observer, vid_restart, black bars at top of screen (viewsize?)
- dog_sacrifice:
when i use the chat window to chat instead of the console it is also shifted around from 3.1 to 3.5 and it does this weird thing where it moves down each message
- fgh: no menu options when loading
- fgh: no text until cfg_load
- fgh: black textures (despite map, but not all the time)
- fourier:
also somehow my ups indicator in the middle of the screen just disappeared
- meag: hall of mirrors effect in
antemple.bsp
- meag: downloading map from server now creates directory rather than a file
- petska: "I got some random crashes with ezquake-std.exe after trying to connect to any server. Sometimes it can be 3 times in a row"
- VVD: reports of increased input lag in 3.5 vs 3.1... might be cheaper to just buy & send him a new computer
- VVD:
[VVD: ezq 3.5 alpha20 can't restore correct resolution after alt+enter 2 times VVD: help only: vid_framebuffer 1 vid_framebuffer_scale 2 vid_restart vid_framebuffer_scale 1 VVD: from window to fullscreen VVD: or set vid_framebuffer_scale 2 before ALT+Enter and vid_framebuffer_scale 1 after (with vid_framebuffer 1)
-
r_viewmodellastfired
- bugged in earlier versions when going to next map, in 3.5 renders a corrupt axe - investigate
item_opacity
on hud elements - this wasn't always followed, but seemed to define the opacity of non-text items (the speed bar as an example) - utilised by nquake so should keep using - .md3 shader support (keep very basic for now, maybe just blending modes)
Todo list (4.0-alpha)
- .md3 vertex/colored lighting etc as normal
- hazeus: look into progs/v_bat.mdl &
r_lerpmuzzlehack
... only lerp points which are always in front of the player? - stop switching programs when drawing different hud elements (especially circles/lines)
- stop switching back to immediate mode at end of each program call in classic
- complete classic .glsl rendering path, allow -noimmediate
- Alpha chains
- HUD: Circles
- GLC_RenderFramebuffers
- MD3 Rendering
- MD3 Powerup shell
- Bloom effect
- GLC_PolyBlend
- GLC_BrightenScreen
- GLC_DrawSky() (various?)
- GLC_DrawMapOutline()
- DrawGLPoly() (what else uses this?)
- GLC_EmitWaterPoly() - only called when *model, find example
- OpenGL 3.2 support (update v120 shaders, ask for core on OSX)
- bloom functionality in glsl
- bgnr: fov distortion on vid_restart
- bgnr: gamma doesn't work, reports "gamma size broken, gamma wont work" (likely to be linux specific)
- bps: "bug on alpha15 where it glows on the ground on couple of places, like the glow from a quad, currently only on ztndm3" - have downloaded the .mvd and seen demo showing example, happened once on watching demo bug cannot reliably replicate - could have been the GL_BindTextures() bug?
- dev: screen flickering. (... cannot replicate)
- initially thought to be only on linux, but seems it happens on windows too after long uptime.
- (dev reports that mur has same issue)
- (we now think this is a hud-rendering issue but haven't got to the bottom of it)
- dev: crash when issuing
/vid_restart
while fast-forwarding a demo. Error message looks like it might be freeing() memory twice. (command wasgl_externalTextures_world 1; gl_max_size 32768; gl_texturemode GL_LINEAR_MIPMAP_LINEAR; gl_loadlitfiles 1; gl_outline 1; vid_restart
) - lordlame: complaints about performance on radeon 6990 (reports alpha3 runs better)
- core profile rendering broken on AMD (narrowed it down to
draw_world
)
4.0 complete
- convert .mdl/.md3/.bsp-items to a common model format
- vertex/colored lighting in .glsl
- complete reading user interface from json
- complete new threading model for server browser
4.1
- multiple huds per config
- old-hud should be subset of new-hud rendering
- customisable scoreboards
- customise the location of multiview windows
- look again at gpu-culling of scene, pre-building list of surfaces per vis-area
- look again at deferred shading
Fixed in 3.5-menus
- dirtbox: rendering of server browser's server popup window was broken (was connected to server and running server browser and having server-browser window open)
- full console was drawn in background then painted over before server-browser
- spaces were still drawn when drawing red text, rather than skipped as normal
- dialog boxes were rendered as individual blocks rather than repeating tiles (very old issue)
- meag:
crosshairimage
is set to an image that is not available, will not load (memory in pool not allocated) - meag: proportional font loading is broken (uses new spacing for spaces but still uses fixed-width font)
- meag: server browser threading model significantly changed
- meag: user interface functionality significantly changed
Old bugs
- timon: coronas of rockets in water are visible when out of the water
- meag: cheap shadows are affected by rotation of item (most noticeable on gibs)
Bugs reported, not being actioned
- raket:
http://upload.foppa.dk/files/ez35love.mkv
, rendering to one x server and capturing from another on nvidia. Works on 3.1, 3.5-classic crashes immediately, 3.5-glsl gives the video attached. also breaks cs:go. no bug if ffmpeg capturing setup isn't enabled, raket suspects bug in linux nvidia drivers - raket: requested change: detect compositor on x-windows
Hopefully fixed (waiting for feedback)
- bgnr: text font appears as solid colour (reports that running without config works fine, has supplied config - was .wad font only)
- bps: crash on last seconds of dm2 (particle-expiring issue fixed in alpha6)
- dimman: crash when running
timedemo demo1
(...cannot replicate, believe might be same as bps) - ciscon: on mesa,
/vid_gl_core_profile
to get > 3.0 on intel card supporting 4.5 no longer works - dirtbox: related out of memory error when trying to connect to server (can't get this to happen, but fixed some memory leaks and memory usage should now be much lower)
- lordlame: vid_renderer 0 > 1 > 0 loses performance increase (performance stays at '1' levels) - AMD system
- up2: incorrect luma textures used on start.bsp (fullbright player skins layers used instead of brush model luma textures) (... could not replicate but alpha16 fixed bug in GL_BindTextures() call)
Struggling to replicate
- blah/ciscon: increased memory usage over time (... cannot replicate)
- dopeskillz: "gl_picmip is broken" (cannot replicate)
- nigve: 'q' in tracker isn't blue anymore (cannot replicate)