Jump to content
The Dark Mod Forums

stgatilov

Active Developer
  • Posts

    6799
  • Joined

  • Last visited

  • Days Won

    234

Everything posted by stgatilov

  1. 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
  2. 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.
  3. 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.
  4. 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.
  5. 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.
  6. 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.
  7. 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?...
  8. Yes, here is a good place. Tracked an issue as 4924. Thanks!
  9. 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
  10. 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
  11. 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.
  12. 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.
  13. 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.
  14. 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
  15. You can verify by using r_skipInteractions 1 and r_skipAmbient 3 if ambient light does not work completely.
  16. 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.
  17. 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.
  18. 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.
  19. 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.
  20. 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.
  21. 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?
  22. 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.
  23. TDM 2.07 is ready for beta test Windows, Full Install: 1 - Create a darkmod folder anywhere you like. 2 - Download the TDM Updater. Extract tdm_update.exe from the downloaded ZIP and place it in your darkmod folder. 3 - Download a special tdm_mirrors.txt file and place it in your darkmod folder. 4 - Start tdm_update.exe. Remember to use the --keep-mirrors setting when running tdm_update. (On the main window, click the "Advanced Options" button and check the first box.) Windows, 2.06 to 2.07 Upgrade: 1 - Download a special tdm_mirrors.txt file and place it in your darkmod folder. 2 - Start tdm_update.exe. Remember to use the --keep-mirrors setting when running tdm_update. (On the main window, click the "Advanced Options" button and check the first box.) Windows, Full install with freyk's installer: 1 - Download the installer from here. 2 - Run the installer. Choose where to install TDM, and maybe other settings. 3 - When tdm_update starts, download a special tdm_mirrors.txt file and place it into the installation directory (where tdm_update.exe should already be located). 4 - At the same moment, enable --keep-mirrors setting. (On the main window, click the "Advanced Options" button and check the first box.) 5 - Proceed as usual. Linux, Full Install: 1 - Create a darkmod folder anywhere you like. 2 - Download the Linux version of the TDM Updater and extract it to your darkmod folder. 64-bit build of tdm_update can be downloaded separately from here. 3 - Download a special tdm_mirrors.txt file and place it in your darkmod folder. 4 - Make tdm_update.linux executable: "chmod +x tdm_update.linux" 5 - Run the updater. Remember to use the --keep-mirrors setting. If you are running 64-bit build of tdm_update, also use --noselfupdate key. Linux, 2.06 to 2.07 Upgrade: 1 - Download a special tdm_mirrors.txt file and place it in your darkmod folder. 2 - Run the updater. Remember to use the --keep-mirrors setting. P.S. If you have buggy graphics immediately after update from 2.06, try to restart game. If this does not help, you can also try to delete darkmod.cfg as a last resort fix (probably backup it beforehand). New features in 2.07 Graphics: 1) Finished the move to FBO-based rendering and implemented proper antialiasing. It is recommended to reset config file, or at least set r_useFBO 1 and r_fboResolution 1 manually. 2) Numerous FBO-related fixes: reloadImages now works, quickload no longer crashes, no more duplicate renders, etc. 3) New experimental mode of rendering shadows ("Maps") --- can be switched on in Video/Advanced menu. 4) Softness of soft shadows can be controlled by emitter_size spawnarg. Beware: "Maps" and "Stencil" modes of rendering shadows treat it in absolutely different way! 5) Added "soft gamma": implementation of gamma correction not subject to color banding. Configured via cvars r_ambientMinLevel and r_ambientGamma. Sound: 1) New syntax for EFX files (Version 2): allows using presets from openal-soft. See syntax in 4815 (to be added to wiki page later). 2) Sounds which should not be affected by environment are marked as no_efx. 3) Enabled HRTF by default for better positional sound: works properly only with headphones. Generic: 1) FrobHelper: tiny white dot appears in the center of the screen (can be disabled in menu). 2) Mouse sensitivity in the main menu should be similar to one in Windows. 3) Precision fixes: dmap and collision-related gameplay are affected. 4) tdm_update: probably improved VCRedist installation, built preliminary Linux 64-bit version (cannot self-update yet). Assets: 1) A pack of assets added. Expect a 400 MB differential package! And other improvements, additions, fixes, and optimizations.. More details can be seen in What's new wiki article and in the roadmap. Important cvars Old: * r_useFBO: enables/disables FBO rendering. It is now ON by default. * r_fboResolution: coefficient for internal rendering resolution (takes effect only when FBO is on). 2 means double resolution. Works like SSAA. Very high performance cost. * r_softshadowsradius: Determines how large the light center is for light sources. Negative value overrides emitter_size spawnarg. (partly configurable in video settings GUI) * r_softshadowsquality: Determines how many gradients for shadows. Larger values produce smoother blending at more performance cost. (configurable in video settings GUI) New: * r_ambientMinLevel: adds specified value to ambient light (linear correction). * r_ambientGamma: applies specified gamma exponent to ambient light (gamma correction). * r_shadows 2: enables new "Maps" implementation of shadows. (configurable in video settings GUI) * r_shadowMapSize: defines resolution of shadow maps with "Maps" implementation of shadows. More = better, less = faster. * r_fboSharedDepth 1: avoid depth buffer copy (work only with AA off). Do not use unless you have Intel GPU. Notes 1 - This effort is to find out if we broke anything in TDM with our 2.07 changes, if a new 2.07 feature isn't working correctly, or if some major bug retaining after 2.06 is not fixed yet. We won't be trying to fix bugs that have been around for a long time. The best that could be done now for such old-living bugs is to create an issue in bugtracker (if not yet present). 2 - If you find something wrong and still have 2.06 and/or 2.05 versions in your hands, please test the same thing in 2.06 and 2.05. If it is a new 2.06 feature that isn't working, then by all means mention the problem here. Bugs introduced in the previous 2.06 release are also subject to discussion. 3 - Please try to be specific when reporting a problem. What you were doing, where you were when the problem occurred, can you reproduce it, etc. Most likely, developer will ask the contents of your darkmod.cfg and console log (condump and logFile 2 are used to save it). And, since there are now 32- and 64-bit versions of TDM, please note which you're using. 4 - If you're a developer, please test all the bugtracker issues you were involved in since 2.06 was out. If you are not, choose a random mission and play =) Thank you for testing !
  24. Yes, there is one define in TDM source code (and I guess one more place elsewhere). If the resource file can be tricked into using this define, it would be great solution.
  25. Ok, I'd like to know what says in favor of the first option (i.e. keep it up to date). I see the following problem if we try to keep it up to date: We will regularly forget to change this version (since no one ever needs/uses/sees it), so it will often be close to correct but wrong. In my opinion it is much better to show version 1.0.9 (which is obviously trash) than e.g. version 2.06 instead of 2.08 (which is wrong but looks plausible).
×
×
  • Create New...