Jump to content
The Dark Mod Forums

stgatilov

Active Developer
  • Posts

    7244
  • Joined

  • Last visited

  • Days Won

    280

Everything posted by stgatilov

  1. It is impossible to NOT suffer from color banding using any global gamma correction. Because TDM has no real HDR yet: all intermediate colors are stored in 8-bit values. The main reason why Duzenko did the correction for ambient light only is that inside a single shader you can avoid color banding since intermediate values are 32-bit floats. Up to the latest moment I did not know that gamma/brightness correction can be done via postprocessing cvars. If it is global and can fully substitute r_gamma/r_brightness (without affecting desktop), it would be great to switch to them in future. Then r_gamma/r_brightness can be forever left at their default values or even removed.
  2. Well, if this is repeatable you can try to record a crash dump. Then I could look at it and probably understand what's going on.
  3. Lowenz wants to say that we can downgrade OpenGL version in NVIDIA control panel. I already ran TDM while tricking it to think it has only GL 2.0 with minimum extensions. But there is major difference between simulating something and running it for real. I think Duzenko wants to know the behavior on the real piece of hardware.
  4. Here is the list of available codenames. Official releases: release205 release206 release207 Beta releases: beta207-01 beta207-02 beta207-03 beta207-04 beta207-05 beta207-06 beta207-07 beta207-08 release207orig beta208-01 beta208-02 beta208-03 beta208-04 beta208-05 beta208-07 beta208-08
  5. There are some ideas about changing the way how differential updates work in tdm_update. The goal is to make any update differential, even if you local copy is dirty, if you update between betas, or update backwards. Here is the very early prototype of tdm_update with new algorithm (let's say it is "tdmsync"-based). Ironically, a better approach has already been proposed, so this tdmsync prototype will die as soon as the better one is implemented. However, this won't happen soon, and there is still some sense in testing this version, because both algorithms rely on the same underlying idea. Which is: it is possible to download portions of a file from HTTP server. Note: the prototype is hacky, and using it would be a rough ride! It is not related to the 2.07 beta testing, and it is unofficial and unsupported. Unless you have experience of beta-testing and joggling with TDM versions, better not use it. Instructions for updating: 1) Place the tdmupdate_tdmsync.exe into TDM installation directory which you want to update. 2a) If you want to update to the latest 2.07 beta release, then download tdm_mirrors.txt file just as you usually do for beta-testing. 2b) If you want to update to some particular version, then create tdm_mirrors.txt file in the directory with the following contents: [Mirror azure] url = http://tdmcdn.azureedge.net/beta207-XY weight = 1 Replace beta207-XY with the codename of the version you want to get. The list of codenames is provided in the next post in this thread. 3) Start tdmupdate_tdmsync.exe. 4) Go to Advanced settings, and enable two checkboxes there: --keep-mirrors (if you forget this, you will download the full 2.06 release of TDM!) --noselfupdate (if you forget this, you will be switched back to stock version of tdm_update) Click Save. 5) Now click button Continue>>. 6) It will tell you it is going to download huge amount of data --- ignore that. Check that the number of files to be downloaded is less than 60 (otherwise you have launched updater in the directory without TDM --- better not do that). 7) Click button Continue>>. 8) The progress reports are rather broken during update. In order to see what's going on, open the directory with TDM installation being updated, and see how new files appear. The files with extension .tdmsync are metainfo files (about 30 MB total), the files with extension .bindiff are actual pk4 differences downloaded. 9) When update is over, note the number in Total bytes downloaded: XX.X MB report --- let it be D. Go to TDM directory and check how much space all .tdmsync and .bindiff files take --- let it be S. Unless I am wrong, the real amount of data downloaded is (S + D). For instance, updating from release205 to beta207-01 took me roughly 600-700 MB of download size. 10) Now that you have the version you want, note that: 1. Most likely you have to reset darkmod.cfg. The effect of new config on old version and vice versa is unpredictable! 2. You probably have to run vcredist_x??.exe manually if TDM crashes immediately when started. 3. The updater does not remove new files when updating to previous versions. In most cases it has no effect. One funny case is that if you downgrade from 2.07 to 2.06, you'll get HRTF still enabled, because alsoft.ini will remain =) 11) You can remove all .tdmsync and .bindiff files: you won't need them ever again. But please don't delete .zip files: they are needed for future differential updates. Please don't perform full updates with this updater. If you want to get a fresh 2.05 installation, better copy one of the TDM installs you have (any version except SVN would be OK), then update it using the tool.
  6. New package is up on the server (codenamed beta207-02). You can see more info at one of the first posts (here). P.S. The heatHaze problem has not changed in any way yet. We still have no conclusion on how to fix it the best way.
  7. Ok, please correct me if I'm wrong: 1) You tried to add maskDepth to all stages of your shader, and the artefacts are gone. 2) You also see the issue with backfaces popping up when hitting blackjack on glassproblem.map (if you add all maskDepth). 3) You tried to look through several glass surfaces on some real map, and this popping up does not happen (with all maskDepth added, of course). 4) Adding maskDepth to all stages of glass materials is a proper fix for the problem.
  8. There is a question which is not clear to us: is doing something like the glass cube in glassproblem.map considered normal? It has two glass faces in a row, and with the suggested fix it causes farther surfaces to pop up sometimes. I'm almost sure that all those glass materials are inevitably hacky, so there must be some limitations on how they can be used to avoid graphical problems. Is it true that glass surfaces will never overlap each other? P.S. Don't worry, this is considered a serious problem -- we are thinking about best fix now.
  9. Hello! It seems that I'm the last one to the party It is always great to have new coders! I am myself working in CAD / geometric modelling domain, and it's probably close to yours Going down to business: 1) 2.07 beta has just started. The team is busy with fixing upcoming release, the code is in some sense "frozen". So it is not a very good time to start coding, because the contributions are unlikely to get accepted right now Of course, this can in no way stop you from checking out the code, building, experimenting, etc. 2) I suggest against doing something ambitious (like OMG: replacing physics engine) for the first time. You can easily get overwhelmed with amount of subtle problems that you changes cause, or with sheer amount of work required. Better start with looking at bugtracker issues or doing some well-localized improvements. And switch to harder stuff later.
  10. I think this FM uses some custom version. To make things clear... The heatHazeWithDepth uses depth buffer to decide whether to distort surfaces or not. However, it also writes to depth buffer while drawing, unless maskDepth is specified everywhere. NVIDIA GPUs don't like when you read depth buffer while drawing to it, and you can easily read complete carbage from depth buffer (which causes the artefacts you see). When FBO is off, the window's depth buffer is copied into a separate texture: so reading happens from the copied texture, while writing goes into the window's depth buffer --- no problem here. When FBO is on and multisampling is enabled, then there are two depth buffers: everything is rendered into the multisampled depth buffer, which is then copied into depth texture. Again no problem because read/write are from separate places. With FBO on and multisampling off, depth is written to a texture, and this texture is attached as shader input at the same time (no copy is made). So the problem can happen. I tried to add maskDepth to all stages of clear_warp material. It fixes the artefacts for me, but then render order becomes undefined: When I hit air with blackjack on glassproblem.map, back faces of the glass cube pop into front. It looks very ugly, and in fact prohibits using two glass surfaces visible one through another. I wonder if it is OK or not?...
  11. Yes, here is a good place. Tracked an issue as 4924. Thanks!
  12. Just to clarify: are the glitches removed when you set one of these (either one, in both cases issue goes away), and only when you set both of these? I see the White Letters of Glitch here I have always wondered what they are: I have seen that often in the part related to other FBO bugs. Also could you please try again (just in case) to disable FBO. Note that you have to restart game after setting r_useFBO 0, and be sure to check that it is still zero after restart. This cvar is sometimes hard to disable
  13. Could you also say what's the value of image_useNormalCompression cvar? I have briefly looked at the changes since 2.06, and there are quite a lot of them. I'm afraid that substantial help is needed from your side. I have attached an instrumented version of ambientInteraction.fs. I'm pretty sure that you know how to override stock shader with this one (replace it inside pk4 / uncompress one pk4 and change the file / etc). The file has several #if 0 and #if 1 blocks, each one has a comment at the end of the line. With their current values, the shader works normally for me (at least at the beginning of St.Lucia map). I suggest going through all the #if-s. For each of them, do the following: 1) Toggle the digit (change 0 to 1 or vice versa). 2) Execute reloadGLSLPrograms in console. 3) Check if the picture has changed, and how it has changed. 4) Toggle the digit back. 5) Proceed to next #if. Then write back exactly which changes made a difference and what was the difference. If there are no changes, then the whole effort is useless This is rather bruteforce approach, but I would definitely do it myself if I could reproduce the problem. Probably Duzenko would suggest something less stupid. ambientInteraction.fs.txt
  14. Could you please do the following: 1) Provide the contents of your darkmod.cfg. 2) Show how exactly it looks. Including the "press attack to start" screen. Video would be perfect (e.g. record with OBS). Set of screenshots would be OK. If the issue is not present on screenshots, take at least some photos. 3) Try to toggle various parameters. I see you already tried r_useFBO 0. I suggest setting r_fboResolution 1, disable soft shadows and all experimental settings, set shadows to "Stencil". Also try toggling ambient/interaction shaders (simple/enhanbed), switch bloom off. Disable antialiasing just in case. If nothing of this helps, then try to disable parts of lighting: r_skipInteractions 1 --- completely disables interactions (i.e. lighting be lamps, fires, etc.) r_skipAmbient 3 --- completely disables ambient light (sort of global and scene-baked light) If one of this removes crazy flickering, please tell us which one.
  15. We have C++, some almost pure C, x86 assembly, bits of Python an Perl, shell and batch. Quite enough already Adding VBA seems like overkill. Leave only file version.
  16. Well, I'd like to ask here: As far as I see it, it is only important to ensure that tdm_mirrors.txt is near tdm_update.exe by the time you click "Continue>>" in GUI updater. So it does not matter if [your installer starts tdm_update, user puts tdm_mirrors.txt at proper place, user continues] or [your installer ends, user puts tdm_mirrors.txt, user starts tdm_update, user clicks continue]. Since user anyway has to go to advanced options and click a checkbox there, I decided to add the second "manual" thing at the same place.
  17. I tried it several times (I have block-all-by-default firewall policy), and could not reproduce: the updater finishes properly after failing to download crc_info.txt. On the other hand, the tdm_update may crash randomly due to bad usage of multithreading: I had one such case recently (in debug mode). Anyway, major changes in tdm_update are planned for 2.08. To my taste, any LOD changes happening in plain sight are ugly. That's why I usually set LOD to max and suggest you doing the same This mission uses LOD-capable assets and has rather long passage. With enough dedication, you can notice LOD popping even on max settings
  18. You can verify by using r_skipInteractions 1 and r_skipAmbient 3 if ambient light does not work completely.
  19. Please no The only thing tdm_update could do is delete darkmod.cfg. There is a feature request for placing key bindings into another file, so that darkmod.cfg with cvars could be nuked without regret. Stencil shadows is the default value, that's the mode which was used in all TDM up to 2.06.
  20. Most likely it is config-related. So if someone can reproduce this issue, he should attach darkmod.cfg before starting TDM 2.07 first time.
  21. Did you manage to fix the issue with stencil shadows? Did you try to reset config? Did it help? My bad. Fixed the address of updater. Now it should work properly.
  22. I have built from source code using nsis 3.04. I took tdm_update from the 2.07 beta. I'll instruct beta testers to put tdm_mirrors into the proper place.
  23. Not very good --- that's call this plan B When GUI version of tdm_update is run, user can click Advanced Options and set checkbox there. This is how beta testers stay on testing mirror. Perhaps the most right way would be to instruct beta-testers to enable the same checkbox (as in direct install) when using your installer? Of course, it won't be needed for real players.
  24. I'd like to include your installer into beta testing phase. For this to happen, it is necessary to be able to set --keep-mirrors parameter to tdm_update. 1) Can the installer itself do that (some parameter, checkbox, ini-file)? 2) Can the user set the checkbox manually when tdm_update kicks in?
  25. List of beta versions: beta207-01. svn rev 7837 / 15460. Initial beta version --- see changes above. beta207-02. svn rev 7857 / 15480. Fixed _flat texture issue on Grayman's WIP (4923). Fixed issue with breath bar (4916). Added slider for r_fboResolution (values greater than one can only be set in console). Reencoded a bunch of stereo files as mono, which makes it possible for them to sound localized (4921). Fixed crashes happening when mission is finished (4919). Fixed parallel lights with Maps shadows (always render them using Stencil mode). Improved FrobHelper for pickpocketing (4920). Fixed scaling issue with "back" button (4918). Removed global "length" function from trigger_look.script to avoid name conflicts. Removed hardcoded key binding for button "b" from autoexec.cfg. Fixed square edges on snowflakes. Make several cvars archivable, making it simpler to tweak them (3691). Now TDM version is also encoded into the properties of .exe file. beta207-03. svn rev 7883 / 15505. Fixed heatHaze materials when multisampling is off (4684). Apply patch by NagaHuntress to allow alt-tabbing under Linux (4190). Deleted duplicates/poor quality of unreferenced sounds, added sndshd for useful unreferenced sounds (4925). Improved air fix: changed regain speed, more info in savegame (4916, 4929). Zero soft radius is no longer allowed in GUI slider. Added com_maxfps cvar for limiting FPS, uncapped FPS only (4734). Timescale and some more debug cvars temporarily suppress uncapped FPS (4698). Merged character fixes by Anderson in Romanian translation (4935). Fixed some missing assets: leather_chair_001.lwo, molding_white_painted_s warning. beta207-04. svn rev 7896 / 15528. Fixed sitting AIs dying before player meets them (4940). Fixed Sykes not sitting properly on his stool (4936). Faster animation for mantling over small obstacles (4930). Faster mantle over medium-sized objects from crouched state (4945). Mantling no longer allowed underwater (1037). Commented out inclusion of trigger_look + ai_trigger_look from stock tdm_custom_scripts.script. Added "Select all" button in in-game mission downloader (4492). Further fixes to timescale debug tool with uncapped FPS (4698). Fixed occasional white pixel sparklies due to specular light terms (4942). Fixed r_showprimitives with shadow maps. Improved shadows of transparent objects in single-pass shadow maps. Added some more of Dragover's assets (4687). Fixed issue with missing assets for frenchdoor.ase and Utility_fan_frame_002. Some skins cleanup. beta207-05. svn rev 7911 / 15560. New mantling improvements, fixed mantling sometimes ending inside a wall. Changed enhanced interaction shader to behave like in 2.05 (4955). Fixed nofog keyword (3662), probably also shadowcaulk/nofog issue (4541). Fixed occassional all zero scores on finishing mission (4950). Hacky workaround for mission screenshots disappearing in mission downloader (3463). Added tdm_give_loot for debugging purposes. Blend add reduced on tdm_belt_pouch, as this item is almost exclusively used as decoration. Added no_efx to: tool_pickup, potion_drink, frob_loot beta207-06. svn rev 7922 / 15573. Fixed mesh smoothing with specular lighting (4958). Shadows from parallel and very big lights are now soft in Maps mode (4938). Improved "Select All" button location in mission downloader. beta207-07. svn rev 7927 / 15586. Fixed crash with r_shadowMapSinglePass. Added noshadow to cagelamp and brazier light models (for Maps mode). beta207-08 = release207orig. svn rev 7932 / 15598. Fixed stencil shadow issues on the back of some guards (4979). Fixed rare crash happening in training mission melee zone (4952). Player can no longer jump with body after loading game (3588). Added frob highlight stages to spider materials. Added some clamps to dot products in enhanced interaction. r_showPortals now prints text to console only when set to 2. Some improvements of Turkich translations. release207 (link). svn rev 8079 / 15677. Fixed GLSL shaders not working on the latest AMD graphics drivers (5031). Fixed GLSL shaders not working on some Linux drivers (4962). Fixed "r_showportals 1" to work properly with Multi Core Enhancement and with subviews (4993). Fixed missing tdm_coals_hot_ns material on some maps.
×
×
  • Create New...