Jump to content

UniqueOne

Members
  • Posts

    243
  • Joined

  • Last visited

Posts posted by UniqueOne

  1. ok I'm testing it out with a testmap I once made of CSGO's Italy, using a lot of its models but I get 2 errors: libxml2-2.dll and libpng14-14.dll missing, I'm using the base of GTK 1.4 and Q3MAP2 2.5.16

    EDIT: Fixed by using paulvortex's BloodMap x64 folder and your .exe

     

    You need to download the main wzmap file on the first page and then extract the last version over it.

  2. Any idea if this will work for SOF2 aswell?

    I mean the amount of models being used or is this only for Warzone Mod. And if only for Warzone Mod, could it be possible to make the adjustments  for SOF2 aswell? (not saying you have to)

     

    I think it should work as it is now. You might be limited on how much of the procedural geometry you can add.

  3. When I decompile a .BSP file,  the texture scaling, rotation & positioning aren't kept and are reset to default values.

     

    I see. I will look into it when I get some time.

     

     

    @@UniqueOne

     

    Tried this on one of my DF2 maps and I get a warning in-game saying "light grid array mismatch" and I have a few missing textures that appear to have been replaced with caulk.

     

    Think I know what the light grid issue is. I might need to compile a version of wzmap with original lightmap size for basejka.

     

    Missing textures is a bit odd though. Anything special about them or their shaders?

    Smoo likes this
  4. Looking great as always. Are you able to cast shadows from any other light sources besides the sun?

     

    Unfortunately even sun shadows in rend2 are horrible for FPS, specially on anything more complex then a standard map. I usually have them turned off unless I get the urge to see how things look with real shadows.

     

    I have optimized the sun shadows code in warzone for speed, but its still takes around 1/4 of your FPS away (depending on lots of stuff like CPU load, GPU load, GPU and CPU power, etc - for me on this map its about 50-60fps without shadows and about 30ish with them) with all the extra geometry from trees, foliage, etc.

     

    It would be easy enough to add shadows for other lights (in fact I already did most of it), but sadly, the results would be pretty much unplayable. Maybe if I can find some more ways to speed up FPS (I try to keep as close to 60fps as possible on my oldish hardware - nvidia 760), then we can invest the gains into the shadows.

     

    The shadows you see in the screenshots are not actually sun shadows, they are a screen-space-shadow/ssao-ish shader I added as an alternative to real shadows for now.

    Smoo likes this
  5. if i remember correct the mission generator in jka was also there but was never finish and was removed from OpenJK from long time ago :)

    but it would be cool to see somthing new like this in some way :) or maybe a better map format as @@UniqueOne has been talking about before :)

     

    If only. Unfortunately the capable people in the community are too busy building the top of the sky scraper rather then building from the ground up.

     

    On a more related (to the topic) note, this could be really cool man. Although, I suggest that you should look toward generating terrains with procedural geometry (prefab rocks, trees, buildings, etc) instead of trying to generate rooms. It fits much better with randomization then room type maps do.

    Cerez likes this
  6. I probably should mention that adding basic grass to any map with warzone is as simple as adding material type shortgrass or longgrass to the shader. By default it will use the default basic grass.

     

    If you want to use a different climate type, add a foliage/<mapname>.climateInfo like the following.

    [CLIMATE]
    CLIMATE_TYPE=tropical
    

    The "tropical" above tells it to use the climates/tropical.climate settings file. There are various ones to choose from, or you can make your own with your own. This is how tropical.climate ini file looks. If you don't want the trees stuff, ignore all the tree sections, and just set up the grass images to whatever you want. If you also want trees, set those up as well and use /genfoliage in game to add the trees. Grasses do not require the genfoliage command, they just work.

    [GRASS]
    grassImage0=models/warzone/foliage/grasstropical
    grassImage1=models/warzone/foliage/grasstropical2
    grassImage2=models/warzone/foliage/grasstropical3
    seaGrassImage=models/warzone/foliage/seagrass
    
    [TREES]
    // Over-all tree scale multiplier...
    treeScaleMultiplier=2.0
    
    // Per-tree model filenames...
    treeModel0=models/warzone/trees/uqpalm2.md3
    treeModel1=models/warzone/trees/uqpalm3.md3
    treeModel2=models/warzone/trees/giant1.md3
    treeModel3=models/warzone/trees/anvilpalm1.md3
    treeModel4=models/warzone/trees/willow.md3
    treeModel5=models/warzone/trees/willow2.md3
    treeModel6=models/warzone/trees/willow3.md3
    treeModel7=models/warzone/trees/willow4.md3
    treeModel8=models/warzone/trees/manfern.md3
    
    // Per-tree billboard texture filenames...
    treeBillboardShader0=models/warzone/billboard/uqpalm2
    treeBillboardShader1=models/warzone/billboard/uqpalm3
    treeBillboardShader2=models/warzone/billboard/giant1
    treeBillboardShader3=models/warzone/billboard/anvilpalm1
    treeBillboardShader4=models/warzone/billboard/willow
    treeBillboardShader5=models/warzone/billboard/willow2
    treeBillboardShader6=models/warzone/billboard/willow3
    treeBillboardShader7=models/warzone/billboard/willow4
    treeBillboardShader8=models/warzone/billboard/manfern
    
    // Per-tree billboard scales...
    treeBillboardSize0=128.0
    treeBillboardSize1=128.0
    treeBillboardSize2=204.0
    treeBillboardSize3=168.0
    treeBillboardSize4=183.0
    treeBillboardSize5=183.0
    treeBillboardSize6=203.0
    treeBillboardSize7=203.0
    treeBillboardSize8=153.0
    
    // Per-tree radius scales...
    treeRadius0=42.0
    treeRadius1=52.0
    treeRadius2=72.0
    treeRadius3=75.0
    treeRadius4=38.0
    treeRadius5=38.0
    treeRadius6=38.0
    treeRadius7=38.0
    treeRadius8=72.0
    
    // Per-tree vertical offsets...
    treeZoffset0=-64.0
    treeZoffset1=-64.0
    treeZoffset2=-64.0
    treeZoffset3=-64.0
    treeZoffset4=-64.0
    treeZoffset5=-64.0
    treeZoffset6=-64.0
    treeZoffset7=-64.0
    treeZoffset8=-64.0
    
    
  7. I wonder if that lightmap compilation issue is fixed?

    (The one where if you had a lot of lighting and used complicated things like -samples 3 and low _lightmapscales the whole map would come out borked from a lighting view with odd shaders everywhere)

     

    Hmm. Not sure. If it was something to do with a limit, then possibly.

  8. @@UniqueOne -- derived it from Vortex's BloodMap enhanced q3map2...

     

    https://github.com/paulvortex/BloodMap

     

    ..I think these are some of the numbers:

     

    MAX_MAP_MODELS 4096 (was 1024)

    MAX_MAP_BRUSHES 65536 (was 32768)

    MAX_MAP_PLANES 2097152 (was 1048576)

    MAX_CUST_SURFACEPARMS 1024 (was 64)

     

    Oh, I went way beyond those limits with WzMap.  :ph34r:

     

    MAX_MAP_BRUSHES 1048576

    MAX_MAP_PLANES 67108864

     

    MAX_MAP_NODES 8388608 (was 262144)

    MAX_MAP_BRUSHSIDES 15728640 (was 1048576)

    MAX_MAP_LEAFS 8388608 (was 131072)

    MAX_MAP_LEAFFACES 8388608 (was 1048576)

    MAX_MAP_LEAFBRUSHES 8388608 (was 262144)

    MAX_MAP_PORTALS 8388608 (was 131072)

     

    MAX_MAP_DRAW_SURFS 2097152 (was 262144)

    MAX_MAP_DRAW_VERTS 67108864 (was 8388608)

    MAX_MAP_DRAW_INDEXES 67108864 (was 8388608)

     

    MIN_WORLD_COORD -524288 (was -65536)

    MAX_WORLD_COORD 524288 (was 65536)

     

     

    Really the only limits are in the game itself and game ram usage now. I believe the artists should be the ones to choose how much complexity they want from their work, not arbitrary built-in limitations.

     

    It is possible to generate maps that base game won't be able to load (eg: base game probably will not like maps bigger then -65536 -> 65536. It will probably load them but stuff will not work right). I have pushed it as far as possible and allowed for almost anything to be compiled, mappers will need to find the limits of what their mods or basejka can allow depending on what they are using.

     

    Warzone has been patched to allow for much higher limits, and OpenJK could easy be patched (already pointed out to Xycaleth how he can easy allow for the majority of the new limits).

     

     

    So, yeah... Get out there and make what you want to make... and watch it compile faster then ever before with the multi-threading I have also added to most of the code   :rolleyes:  ... add trees and extra details (rocks? imperial shuttles here and there? whatever you want...) semi-automatically to save you time and make the maps look better. You control the limits, no longer let them control you... hehe

  9. New version uploaded in the main post.

     

    New stuff:

    * You can now do procedural addition of geometry to your maps. This is similar to what many new games use to add details (see below for more info).

    * Procedural geometry system can use up to 64 models. This could be increased if required.

    * Nearly all the really slow parts of the code are now fully multi-threaded.

    * Various bug fixes.

     

     

     

    Procedural Geometry.

     

    I have extended the old "forest" system used to add trees to maps, to also be usable for any other sorts of models.

     

    There is a now a simple .ini format file that you can create for your map and place with the .map file before you compile to:

    * Specify what models to use.

    * Specify what scale to use for each model.

    * Specify if each model should only be used on low-slope surfaces (you set the max angle in degrees for this object type).

    * Specify a buffer zone radius around each model. Other models will not be added within this zone.

    * Specify a minimum distance between usage of each model type. No other model the same will be placed within this radius. eg: set it to bigger radius then map and it will only add 1 of that object.

     

     

    Here is an example config file that I have been using to test the system...

    [GRASS]
    // Only used by warzone mod...
    grassImage0=models/warzone/foliage/maingrass
    grassImage1=models/warzone/foliage/maingrass
    grassImage2=models/warzone/foliage/maingrass
    seaGrassImage=models/warzone/foliage/seagrass
    
    [TREES]
    // Over-all model scale multiplier...
    treeScaleMultiplier=1.0
    
    // Per-model filenames...
    treeModel0=models/map_objects/vjun/vrock2.md3
    treeModel1=models/map_objects/vjun/vrock2.md3
    treeModel2=models/map_objects/warzone/standingstones2.md3
    treeModel3=models/map_objects/rift/crystal_floor.md3
    treeModel4=models/map_objects/rift/crystal_floor.md3
    treeModel5=models/map_objects/rift/crystal_floor.md3
    treeModel6=models/warzone/trees/uqpalm1.md3
    treeModel7=models/warzone/trees/uqpalm2.md3
    treeModel8=models/warzone/trees/uqpalm3.md3
    treeModel9=models/warzone/trees/giant1.md3
    treeModel10=models/warzone/trees/anvilpalm1.md3
    treeModel11=models/warzone/trees/manfern.md3
    treeModel12=models/warzone/trees/willow.md3
    treeModel13=models/map_objects/vjun/vbridge.md3
    treeModel14=models/warzone/trees/uqbigtree2.md3
    treeModel15=models/map_objects/rift/crystal_floor.md3
    
    // Per-model vertical offsets...
    treeZoffset0=-4.0
    treeZoffset1=-2.0
    treeZoffset2=-48.0
    treeZoffset3=0.0
    treeZoffset4=0.0
    treeZoffset5=0.0
    treeZoffset6=-512.0
    treeZoffset7=-128.0
    treeZoffset8=-128.0
    treeZoffset9=-64.0
    treeZoffset10=-64.0
    treeZoffset11=-64.0
    treeZoffset12=-64.0
    treeZoffset13=192.0
    treeZoffset14=-64.0
    treeZoffset15=0.0
    
    // Per-model scales...
    treeScale0=1.0
    treeScale1=0.5
    treeScale2=1.0
    treeScale3=1.3
    treeScale4=1.0
    treeScale5=2.0
    treeScale6=5.0
    treeScale7=5.0
    treeScale8=5.0
    treeScale9=4.0
    treeScale10=4.0
    treeScale11=4.0
    treeScale12=4.0
    treeScale13=1.0
    treeScale14=4.0
    treeScale15=1.4
    
    // Per-model maximum slope...
    treeForcedMaxAngle0=0
    treeForcedMaxAngle1=0
    treeForcedMaxAngle2=18.0
    treeForcedMaxAngle3=0
    treeForcedMaxAngle4=0
    treeForcedMaxAngle5=0
    treeForcedMaxAngle6=0
    treeForcedMaxAngle7=0
    treeForcedMaxAngle8=0
    treeForcedMaxAngle9=0
    treeForcedMaxAngle10=0
    treeForcedMaxAngle11=0
    treeForcedMaxAngle12=0
    treeForcedMaxAngle13=18.0
    treeForcedMaxAngle14=0
    treeForcedMaxAngle15=0
    
    // Per-model buffer ranges...
    treeForcedBufferDistance0=0.0
    treeForcedBufferDistance1=0.0
    treeForcedBufferDistance2=256.0
    treeForcedBufferDistance3=0.0
    treeForcedBufferDistance4=0.0
    treeForcedBufferDistance5=0.0
    treeForcedBufferDistance6=0.0
    treeForcedBufferDistance7=0.0
    treeForcedBufferDistance8=0.0
    treeForcedBufferDistance9=0.0
    treeForcedBufferDistance10=0.0
    treeForcedBufferDistance11=0.0
    treeForcedBufferDistance12=0.0
    treeForcedBufferDistance13=512.0
    treeForcedBufferDistance14=0.0
    treeForcedBufferDistance15=0.0
    
    // Per-model distance from same type ranges...
    treeForcedDistanceFromSame0=0.0
    treeForcedDistanceFromSame1=0.0
    treeForcedDistanceFromSame2=8192.0
    treeForcedDistanceFromSame3=0.0
    treeForcedDistanceFromSame4=0.0
    treeForcedDistanceFromSame5=0.0
    treeForcedDistanceFromSame6=0.0
    treeForcedDistanceFromSame7=0.0
    treeForcedDistanceFromSame8=0.0
    treeForcedDistanceFromSame9=0.0
    treeForcedDistanceFromSame10=0.0
    treeForcedDistanceFromSame11=0.0
    treeForcedDistanceFromSame12=0.0
    treeForcedDistanceFromSame13=8192.0
    treeForcedDistanceFromSame14=0.0
    treeForcedDistanceFromSame15=0.0
    
    
     

    ... and here's a few screenshots of how a map looks with added randomized models.

     

    rmWAQ3d.jpg

    Ut0plPw.jpg

    Vd3P5la.jpg

    hRc5C02.jpg

    SomaZ, Mand'alor, Smoo and 5 others like this
×
×
  • Create New...