Jump to content

UniqueOne

Members
  • Posts

    243
  • Joined

  • Last visited

Everything posted by UniqueOne

  1. The answer to the format seems pretty simple to me, if you don't want a new model format, but you could have a new extension like "modelname.glx" when rend2 goes to load a glm with the extension ".glx" load the tangents instead of generating them. It could search for .glx then fall back to .glm when not found (like is done with image loading). The questions I have, though, are: 1. Will these baked tangents become meaningless if you add tesselation/displacement (which I assume you are going to want, if you want > HL2 rendering)? Since the surfaces all get changed. 2. I know from experience that as soon as you enable rend2 features, your FPS is going to drop to hell. I suggest you move to deferred lighting now. Do calculation on final screen pixels, not all the extra stuff it stomps over during render... or get occlusion culling working - something I have not been able to make work. (also warzone has a mini lightall glsl called shadowpass that it uses for depth and shadow renders, look at it, switch to it during those passes and you will gain a lot of FPS as the scene gets more complex). 3. What about maps? What's the point in having crazy detailed models when the maps themselves are not detailed. If the model format is going to get this sort of update, then the map format needs a massive update or it just wont look right. 4. Have any of the other projects around, that are based on rend2 or xreal, added a newer model format with tangents (new doom/Q4/whatever formats)? Maybe converting skeletal animations data is easier then changing glm - and you might get access to better 3d tools/exporters? I am all for updating anything in the engine and renderer, its time we moved into this centry, something I've been trying to do alone now for the last 3/4 years with no opengl experience at all before starting. I do wonder, however, if worrying about tangents on one model format is like building the top of the sky scraper first. Maybe, just maybe, it would be better to just make the current tangent generator code a little better in the renderer, and come back to this later on? All that said, I like what you guys are doing here. Makes me happy to see others seriously working on the renderer.
  2. Looks like exactly what is needed. If I am able to make it work or not, is another story hehe.
  3. I think JKG changed their API, so I doubt it. But you could try it.
  4. Yeah. All lighting in wz is done deferred, but the code will work fine with forward rendering. Just need to do the final code snippet earlier.
  5. Why don't you do what I do in warzone and use map glow shader locations for extra map lights? Or add a new "light" keyword to shaders? It won't let you preview them in radiant, but it will let you have as many lights as you want without wasting entities. The code to find locations is here (remove the water bits): https://github.com/Stoiss/Rend2/blob/rend2/codemp/rd-warzone/tr_bsp.cpp#L3356 The code to find the average color of the glow texture is here: https://github.com/Stoiss/Rend2/blob/rend2/codemp/rd-warzone/tr_image.cpp#L3133 The code to select the closet lights each frame is here: https://github.com/Stoiss/Rend2/blob/rend2/codemp/rd-warzone/tr_shade.cpp#L1689 The code to add the best ones as dlights each frame is here (note you will want to increase MAX_DLIGHTS, but thats simple - also you probably don't want this is postprocess code, maybe do it straight after the section above or combine them, warzone does all lights as a post process): https://github.com/Stoiss/Rend2/blob/rend2/codemp/rd-warzone/tr_postprocess.cpp#L921 The glow dlights in warzone have a static range, but you could easy add that as a shader keyword if required.
  6. Warzone NPCs will be based on surrounding player levels, which are not implemented yet - at the moment they all just spawn with a lot of health for testing weapons and whatever. The whole NPC spawn system is going to be completely different in the future. It may be a bit early to be showing gameplay hehehe. NPCs already use jetpacks, and can switch between weapons, and try to do evasions, and pathfind, etc, but it's not really anything like what it will be in the end. The mod can also currently spawn thousands of NPCs without lagging the game. On a related note, the current focus of warzone is on renderer looks and speed, the ability to use huge maps, and the ability to create them as easily/quickly as possible. The map you see in the video is just a simple terrain. Everything else is added by the warzone mapping systems and tools. I can literally create multiple similar looking maps in an hour if I choose by doing the following. 1. Generate terrain in whatever software (I use this software - I'm sure there is better available). 1b. If you are a more advanced mapper, you can add whatever you want in radiant to the terrain. A few buildings or a town or landmarks or whatever. Towns can also be auto-added by wzmap using the climate INI file. 2. Fast compile with wzmap without lighting, etc. 3. Load the map ingame and use /genfoliage command to automatically find locations to add trees, cliffs, ledges, etc. Only tell it to add trees, set plants chance to 0. 4. Compile with wzmap with the output from /genfoliage in the maps directory, and a climate INI file (which tells wzmap which trees/models/buildings/whatever to add to the terrain). If the map is for warzone, don't bother wasting days on lighting. 5. Load completed map ingame and use /genfoliage again to create ground foliage positions. This time only add plants, so set trees stuff to 0. "/genfoliage replantspecial <percent_to_keep>" can then be used to remove excess foliages to suit your map. 6. If you want AI support on the map, use /awp (auto waypointer) ingame to generate waypoints for the map automatically. 7. Done. You now have a map similar to the video. One of the (maybe the biggest) focuses of warzone is to make modding easy, to try to bring new people (modders) to the game, by making it simple to start. While all the other projects make it more complicated to get started, warzone tries to make things simple.
  7. https://www.youtube.com/watch?v=gP3JPbPxjGw
  8. It seems Intel and ATI don't like GLSL shaders in UTF-8 text format. The test build has been updated. Should fix your problem I hope.
  9. Try adding "+set logfile 2" to your desktop shortcut's command line. Then the problem should hopefully be logged in Documents\My Games\warzone\warzone\qconsole.log
  10. The test build has been updated. See if that helps.
  11. Hmm I really should update the test build copy. Those errors are fixed, but if you only have intel graphics it may not help. Anyway I just woke up, but I will update the test build version in a few hours.
  12. New download link posted in the first post. You only need it if you were crashing on game start.
  13. Finally someone else trying to move the engine into this century! I salute you. Awesome work! Did you by any chance also replace the horribly slow/wasteful Q3/BSP collision code with the bullet additions? I want to replace BSP with a real map format in order to properly do an open world using procedural geometry additions, but I suck at this collision stuff.
  14. Hmm he rewrote a lot of lightall shader recently. Maybe he missed something. I doubt it effects warzone, out lightall is vastly different.
  15. I have no idea. Try it and see. You can always rename the opengl32.dll in your game folder to disable QEffects.
  16. Hmm magic detail is sort of hard to explain. It sort of creates bumpiness/variation on the screen image by darkening and lightening pixels based on the detected edges around it. I invented the method for my ENB mod for skyrim and ported it to warzone. It tends to improve everything a little, but the more detailed the original texture (eg: a high resolution original texture with good detail), the more detailed the effect becomes. It really needs to be seen ingame to understand. In theory color grading could be done in lightall, but that is not really advised as it draws a lot of stuff never seen in the final image (stomped over by something else). I guess I could output a 4th LUT map image in lightall to tell it to use a specific palette or LUT code in post on screen areas, but even that would hurt FPS somewhat. Another option might be to allow per-map palettes, so by using selected colors in textures, the single palette texture would handle them differently. I think animMap should work now with 2D in rend2/wz? I don't think rend2 cares if its 3D or 2D? Xycaleth?
  17. So, I decided to port the renderer from my Warzone mod to JKG for you all. You can now enjoy JKG with a modern graphics engine. Here is the latest version (update 3 - for 1.3.22a) download link for the warzone renderer version. Here is the older version (update 2) download link for the warzone renderer version. Here is the original version download link for the warzone renderer version. Installation: To enable the warzone renderer, use +set cl_renderer "rd-gwz" in your game loading shortcut/script. To disable the warzone renderer, use +set cl_renderer "rd-galaxies" in your game loading shortcut/script. It will connect to standard JKG servers. NOTES: * The warzone renderer requires a powerful, modern computer and video card. * I will try to keep it updated with new updates of JKG, unless they decide to adopt the renderer themselves. USEFUL CVARS: r_dynamicLight - [0 - 6] Enables the various lighting modes. 0 - Off. 1 - Low quality volumetric. 2 - Medium quality volumetric. 3 - High quality volumetric. 4 - Low quality volumetric plus map glows. 5 - Medium quality volumetric plus map glows. 6 - High quality volumetric plus map glows. Default: 0 r_distanceBlur - [0 - 5] distance blur. 0 - Off. 1 - Basic (fast). values above 1 do higher quality gausian blurs. Default: 1. r_glslWater - [0 - 2] Do advanced water. Turn it off if you have map issues. 0 - Off. 1 - Use advanced water. 2 - Use advanced water with reflections. Default: 2. r_ssao - [0 - 1] Screen space shadows. 0 - Off. 1 - On. Default: ON. r_magicdetail - [0 - 1] Adds more detail to the scene. 0 - Off. 1 - On. Default: ON. r_colorCorrection - [0 - 1] Uses a palette texture (gfx/palette.png) to alter the screen colors, like ENB does in say Skyrim. 0 - Off. 1 - On. Default: ON. r_fxaa - [0 - 1] FXAA Anti-Aliasing. 0 - Off. 1 - On. Default: ON. r_esharpening - [0 - 1] Sharpen's the screen image's pixels, adding more detail to the screen. 0 - Off. 1 - On. Default: OFF. r_esharpening2 - [0 - 1] Sharpen's the screen image's pixels, adding more detail to the screen. A second method. 0 - Off. 1 - On. Default: OFF. r_darkexpand - [0 - 1] Darkens edges of objects, and does some Anti-Aliasing. 0 - Off. 1 - On. Default: OFF. r_truehdr - [0 - 1] Darkens dark colors and lightens light colors to mimic HDR. 0 - Off. 1 - On. Default: ON. r_dynamicGlow - [0 - 1] Adds glows around glowing objects. 0 - Off. 1 - On. Default: ON. r_bloom - [0 - 1] Adds extra glows around glowing objects. 0 - Off. 1 - On. Default: ON. r_anamorphic - [0 - 1] Adds anamorphic lens flares to glowing objects. 0 - Off. 1 - On. Default: ON. r_dof - [0 - 1] Depth of Field. Mimic's a camera lens by dynamically blurring background objects. 0 - Off. 1 - On. Default: ON. r_lensflare - [0 - 1] Draws a lens flare when looking at a bright object. 0 - Off. 1 - On. Default: OFF. r_vibrancy - [any values] Adjusts the colorfulness of the screen image. Higher values are more colorful. Negative values remove color. Default: 0.4. r_trueAnaglyph - [0 - 1] For Red/Blue 3D glasses. Draws the screen in true depth based 3D. 0 - Off. 1 - On. Default: OFF. r_deferredLighting - [0 - 1] Turn ON/OFF lighting and occlusion. Not sure why anyone would turn it off. 0 - Off. 1 - On. Default: ON. r_cubeMapping - [0 - 2] Turn ON/OFF cube mapping (reflections). Disable this if you have FPS issues. 0 - Off. 1 - On for map and Ghoul2 models. 2 - On for everything. Default: 2. r_foliagePasses - [0 to whatever] Number of passes to draw grasses. More passes means more/better grass at the cost of more FPS. 0 - Off. Default: 16. I have also uploaded a version of the huge warzone ilum_mmo map for you to play on. NOTE: It requires the warzone renderer to be active to load. Enjoy!
  18. *sigh* WTB: Modelers. Mappers. Texture Artists. OpenGL experts. HTML/JS experts.
  19. I want to do a desert map, but I need tatooine models. Small buildings, etc. To do something like the video I would probably also need new rock models.
  20. Here's a few screenshots of a new climate type that I am working on. Just in time for christmas
  21. Today I added the ability to specify that particular objects using the procedural geometry should be forced as solid. This can be handy to override the shader's info (for example if you wish to re-use a non solid shader on a solid object to increase FPS and reduce memory usage). I also added the ability to specify a shader for the cliff system to use. Here is an example of the current mapname.climate options with descriptions. [GRASS] // Grass shaders for this map... grassImage0=models/warzone/foliage/grasssnowpineforest grassImage1=models/warzone/foliage/grasssnowpineforest2 grassImage2=models/warzone/foliage/grasssnowpineforest3 // Underwater grass shader for this map... seaGrassImage=models/warzone/foliage/seagrass [CLIFFS] // Use the system that applies procedural cliff geometry to the map... addCliffFaces=1 // Replace texture of the cliff faces with this one... Can use splat maps with warzone... cliffShader=models/warzone/rocks/snowycliff [TREES] // Over-all tree scale multiplier... treeScaleMultiplier=1.0 // Per-tree model filenames... treeModel0=models/warzone/trees/forestpinesnow03.md3 treeModel1=models/warzone/trees/forestpinesnow04.md3 treeModel2=models/warzone/trees/forestpinesnow05.md3 treeModel3=models/warzone/trees/forestpinesnow03.md3 treeModel4=models/warzone/trees/forestpinesnow01.md3 treeModel5=models/warzone/trees/forestpinesnow03.md3 treeModel6=models/warzone/trees/forestpinesnow01.md3 treeModel7=models/warzone/trees/forestpinesnow01.md3 treeModel8=models/warzone/deadtrees/fallentreesnow01.md3 treeModel9=models/warzone/deadtrees/fallentreesnow01.md3 treeModel10=models/warzone/deadtrees/treestumpsnow01.md3 treeModel11=models/warzone/deadtrees/treestumpsnow01.md3 // Per-tree vertical offsets... treeZoffset0=-48.0 treeZoffset1=-48.0 treeZoffset2=-64.0 treeZoffset3=-64.0 treeZoffset4=-72.0 treeZoffset5=-72.0 treeZoffset6=-86.0 treeZoffset7=-86.0 treeZoffset8=18.0 treeZoffset9=24.0 treeZoffset10=-16.0 treeZoffset11=-24.0 // Per-tree model scales... treeScale0=8.0 treeScale1=8.0 treeScale2=10.0 treeScale3=10.0 treeScale4=12.0 treeScale5=12.0 treeScale6=14.0 treeScale7=14.0 treeScale8=2.0 treeScale9=3.0 treeScale10=0.5 treeScale11=0.7 // Only allow this type on slopes less steep then this... treeForcedMaxAngle0=0 treeForcedMaxAngle1=0 treeForcedMaxAngle2=0 treeForcedMaxAngle3=0 treeForcedMaxAngle4=0 treeForcedMaxAngle5=0 treeForcedMaxAngle6=0 treeForcedMaxAngle7=0 treeForcedMaxAngle8=12.0 treeForcedMaxAngle9=12.0 treeForcedMaxAngle10=12.0 treeForcedMaxAngle11=12.0 // Always force a buffer of this radius around the object... treeForcedBufferDistance0=256.0 treeForcedBufferDistance1=256.0 treeForcedBufferDistance2=384.0 treeForcedBufferDistance3=384.0 treeForcedBufferDistance4=420.0 treeForcedBufferDistance5=420.0 treeForcedBufferDistance6=512.0 treeForcedBufferDistance7=512.0 treeForcedBufferDistance8=768.0 treeForcedBufferDistance9=768.0 treeForcedBufferDistance10=512.0 treeForcedBufferDistance11=512.0 // Never place another of the same object within this radius... treeForcedDistanceFromSame0=1024.0 treeForcedDistanceFromSame1=1024.0 treeForcedDistanceFromSame2=1024.0 treeForcedDistanceFromSame3=1024.0 treeForcedDistanceFromSame4=1024.0 treeForcedDistanceFromSame5=1024.0 treeForcedDistanceFromSame6=1024.0 treeForcedDistanceFromSame7=1024.0 treeForcedDistanceFromSame8=3096.0 treeForcedDistanceFromSame9=2048.0 treeForcedDistanceFromSame10=1200.0 treeForcedDistanceFromSame11=4096.0 // Force full solidity on this object (still culls tiny surfaces)... treeForcedFullSolid0=0 treeForcedFullSolid1=0 treeForcedFullSolid2=0 treeForcedFullSolid3=0 treeForcedFullSolid4=0 treeForcedFullSolid5=0 treeForcedFullSolid6=0 treeForcedFullSolid7=0 treeForcedFullSolid8=1 treeForcedFullSolid9=1 treeForcedFullSolid10=1 treeForcedFullSolid11=1 And here is a pic from that climate type added to a basic terrain, ingame.
  22. Yeah it converts models into cliff faces and places them on the map. Jump on discord if you need more info.
  23. I have only tested it with MD3, but picomodel (the lib used by wzmap for models) is supposed to support 3ds, ase, fm, lwo, md2, md3, mdc, ms3d, obj and terrain (which I guess is a heightmap).
  24. I think the only limitation is the limitation of your video card. I am using 4k textures on a bunch of warzone stuff when the HD assets are enabled. I have a feeling the hardware limit is 8k (but am not totally sure). I have not tried using 8k textures though. For terrain I use this program http://nemesis.thewavelength.net/index.php?p=8 mainly because I am not a mapper and find it fairly simple compared to the others I've seen.
×
×
  • Create New...