Jump to content

Radix

Members
  • Content Count

    186
  • Joined

  • Last visited

  • Days Won

    11

Radix last won the day on October 6

Radix had the most liked content!

5 Followers

About Radix

  • Rank
    Regular

Recent Profile Visitors

4,550 profile views
  1. All brushes are black because the vrad.exe crashes for some reason. I guess this causes the problems. So there is probably some messed up brushwork. Check for invalid brushes (Press "Alt+P" or go to "Map" -> "Check for problems", then search for invalid solids). Check for misaligned brushes. Brushes which are not "on the grid" with small gaps between them. If you can't find them, try to compile parts of your map via cordon tool. So you can isolate the problematic brushes. - There are also some errors with nodraw texture on displacements (select these faces with "Toggle texture application" (Shift+A) then go to "Displacements" -> "Destroy") - Also some wrong usage of models (prop_static usin´╗┐g a model, which must be used on a dynamic entity (i.e. prop_physics) )
  2. Radix

    DE_CACHE (new version)

    The more you do, the more you do wrong.
  3. Static Prop Combine in Counter-Strike: Global Offensive A step by step guide thanks to @untor What is Static Prop Combine? Static prop combine, or informally speaking "autocombine", is a new feature in CS:GO's VBSP. It allows VBSP to merge together multiple static props into a single static prop, either automatically or with user-defined rules. What is static prop combine good for? Static prop combine is another feature to optimize your maps. Most people might think that "the less geometry rendered the better". So if you use small props, it's easier to hide what is not visible. That's not wrong. But there is a problem: In Source, there is one draw call per model per material. And these draw calls are very performance-hungry. That's where static prop combine comes into play: By combining models sharing the same materials, less draw calls are performed, which greatly helps optimization. Valve has stated that Nuke runs 40% faster after they implemented static prop combine. How do I use static prop combine? The static prop combine feature was added in 2016 with the release of the reworked de_nuke. But since then it was not (?) used by community mappers, there are no (?) guides on the Internet except this documentation. @untor helped me to make static prop combine feature do its job. So we decided that it's time to publish a step by step guide how to use static prop combine. We presuppose that you are already familiar with the creation of props 0. Backup your CS:GO folder (optional) We do not take responsibility for any damage done to your files. So it's time to backup your game files now if you have not already. In general we recommend to duplicate your "Counter-Strike Global Offensive" folder, so you can use a separate installation of CS:GO for mapping while keeping the other one clean for playing. 1. Source files You must have the source files of the models you want to be combined. Usually 3 files for each prop: *.qc reference mesh (supported formats are *.smd, *.dmx and *.fbx) physics mesh So if you want to combine props made by you, you should already have these files. If you want to combine props made by Valve, you will need to decompile them first. And then change the names - otherwise, the version of the prop that is packed in the VPK would overwrite your version. In this guide we will use two different pipe props: You can download the example files here (contains the *.qc and *.smd files) : example.zip Browse to "...\Steam\steamapps\common\content\csgo\" Create a folder "models". In our example we have another subfolder "example". Save the model source files there: These are our QCs: pipe_straight.qc pipe_curved.qc Notes: Restrictions for the *.qc: Only the first $body is recognized. $model is not recognized. $appendsource and $addconvexsrc are not recognized. You can only use $upaxis Z or Y. 2. Compile your props Your models have to be compiled from this directory now: Open your model compile tool (I use Crowbar) Then browse to "...\Steam\steamapps\common\content\csgo\models\example\" and compile the QCs. The compiled model files should be in "...\Steam\steamapps\common\Counter-Strike Global Offensive\csgo\models\props\example\" now. 3. spcombinerules.txt Browse to "...\Steam\steamapps\common\Counter-Strike Global Offensive\csgo\scripts\hammer\spcombinerules\" There you will find "spcombinerules.txt". In this file the combine rules for Valves props are defined. It is a standard KeyValues-formatted text file. Each entry follows the format below. Rename it to "spcombinerules_valve.txt" (or whatever you want) and create a new text file "spcombinerules.txt". Then copy and paste the following into "spcombinerules.txt" and save it. 4. Stub QCs Stub QCs are QCs which contain a base template for the QCs which static prop combine generates. Generally, they should only include: $staticprop $surfaceprop $cdmaterials Any $texturegroups used by the models. Browse to "...\Steam\steamapps\common\Counter-Strike Global Offensive\csgo\scripts\hammer\spcombinerules\qc_templates\". In our example we create a new subfolder "example", open it and then create a text file and rename it to "pipe_combine.qc": Copy and paste the following into "pipe_combine.qc" and save it: 5. Compile your map Add some of our example props to your map in Hammer and compile the map. In our example we use the following compile parameters for VBSP Compile parameters (full list here) : -StaticPropCombine: Merges static props together according to the rules defined in scripts/hammer/spcombinerules/spcombinerules.txt. This lowers the number of draw calls, increasing performance. It can also be used to lower the number of static props present in a map. -StaticPropCombine_AutoCombine: Automatically generate static prop combine rules for props that VBSP deems should be combined. Note: This does not write to spcombinerules.txt. -StaticPropCombine_ConsiderVis: Instead of using the distance limit, combine all props in the group that share visclusters. -StaticPropCombine_SuggestRules: Lists models sharing the same material that should be added to spcombinerules.txt. -StaticPropCombine_MinInstances <int>: Set the minimum number of props in a combine group required to create a combined prop. Tip:Valve had this set to 3 for the new Dust 2. -StaticPropCombine_PrintCombineRules: Confirm: Prints the combine rules? -StaticPropCombine_ColorInstances: Instances of combined props get colored. -KeepSources: Don't delete the autogenerated QCs and unpacked model files after finishing. -CombineIgnore_FastReflection: Combine props, even if they have differing Render in Fast Reflections settings. -CombineIgnore_Normals: Combine props, even if they have differing Ignore Normals settings. -CombineIgnore_NoShadow: Combine props, even if they have differing Disable Shadows settings. -CombineIgnore_NoVertexLighting: Combine props, even if they have differing Disable Vertex lighting settings. -CombineIgnore_NoFlashlight: Combine props, even if they have differing Disable flashlight settings. -CombineIgnore_NoSelfShadowing: Combine props, even if they have differing Disable Self-Shadowing settings. -CombineIgnore_DisableShadowDepth: Combine props, even if they have differing Disable ShadowDepth settings. 6. Success? The combined props look exactly like the single props. So how can you be sure that the static prop combine process was successful? - Once the map is compiled, the combined props will be packed into your *.bsp automatically. - If you add -keepsources to the compile parameters, you can also find the combined props in "...\Steam\steamapps\common\Counter-Strike Global Offensive\csgo\models\props\autocombine\*name of your map*\" and their QCs in "...\Steam\steamapps\common\content\csgo\models\props\autocombine\*name of your map*\". - If you add -StaticPropCombine_PrintCombineRules to the compile parameters, instances of combined props are colored in CS:GO. 7. Additional notes Hammer: - You can manually disable static prop combine for individual props with the "Disable Prop Combine" keyvalue. - Prop scaling (Uniform Scale Override) is not supported yet (?) - If the original props don't have a collision model, you will have to set collisions to "Not Solid" in the properties. Otherwise the combined prop will be solid (automatically generated collision mesh; causes problems). - If the props differ in specific keyvalues, in most cases the default (e.g. Alpha) or the higher value will be used (e.g. fade distances) - Props that differ in the below keyvalues will NOT be combined, unless manually overriden with the appropriate VBSP option: Render in Fast Reflections (-combineignore_fastreflection) Ignore Normals (-combineignore_normals) Disable Shadows (-combineignore_noshadows) Disable Vertex lighting (-combineignore_novertexlighting) Disable Flashlight (-combineignore_noflashlight) Disable Self-Shadowing (-combineignore_noselfshadowing) Disable ShadowDepth (-combineignore_disableshadowdepth) - Props that differ in the below keyvalues will NOT be combined: Skin Color Disable Flashlight TO DO some fps tests with an actual map! which gives better results: " -StaticPropCombine_ConsiderVis" or prop combining based on distances? Is there a console command to display the number of performed draw calls/props? ... ______________________________________________________________________ Sources: https://developer.valvesoftware.com/wiki/Static_Prop_Combine https://developer.valvesoftware.com/wiki/QC https://developer.valvesoftware.com/wiki/VBSP
  4. Radix

    WIP [de_strain]

    In expert compile mode, add -StaticPropLighting to your compile parameters. https://developer.valvesoftware.com/wiki/Static_Props_show_up_black
  5. It's about "draw calls". Many small props mean many performance-eating draw calls. The static prop combine feature merges multiple props into a single big prop, which is less performance-hungry. Combining very few props may not make much sense (rendered geometry vs draw calls?), but that's because it's done automatically. All in all it's still an improvement. Valve has stated that Nuke runs 40% faster after they implemented static prop combine. @untor showed me how to use the autocombine feature and we will post a short guide soon... Edit: Here it is... https://www.mapcore.org/articles/tutorials/static-prop-combine-in-csgo-r111/
  6. Sure, I can try to help you if none of the "tutorial guys" wants to. Further discussion via pm I suggest, I don't want to hijack your thread.
  7. Looks really cool so far! Take care of player visibility! Seems like you are still the only one who managed to make the autocombine feature work... I tried it for a while, but it still doesn't do anything. No errors, nothing at all... - So the *.qc (and the other source files) of your model has to be in "SteamApps/common/content/csgo/", right? - Anything special about the qc? Is there a chance that you could share an example *.qc file? - What about the other source files: Which file format? *.smd or *.dmx? - What compiler do you use to compile the model? (Is "Crowbar" ok? https://steamcommunity.com/groups/CrowbarTool ) - So these are your compile commands for vbsp: -StaticPropCombine -StaticPropCombine_AutoCombine -StaticPropCombine_SuggestRules -KeepSources -StaticPropCombine_ColorInstances -game $gamedir $path\$file ( -StaticPropCombine_AutoCombine makes it ignore your spcombinerules.txt afaik) - stub qc and spcombinerules.txt as you described above (according to this: https://developer.valvesoftware.com/wiki/Static_Prop_Combine ) - anything else?
  8. What happened to the community maps (Ruby and Breach) was pretty much what I expected (looking at the queue times), but the fact that they were not replaced with other community maps but with Cache and Mirage is interesting. Cache because there will be a reworked version in a few days, so it can be tested easily. But Mirage? Will there be a reworked version soon as well? It's currently one of the maps of the comp pool that need a visual rework the most, so I'm pretty sure this is what is going to happen.
  9. https://blog.counter-strike.net/index.php/2019/10/25707/ So Breach and Ruby have been removed and Mirage and Cache are now available for Scrimmage matchmaking.
  10. Next time I will have to think at least for a second before I write something. So basically comp + casual + deathmatch. Not 100% sure about this. Maybe workout will replace agency in case more players play it.
  11. Seems like they stick to the 3 months cycle. In my opinion too short. As soon as players have learnt a map and you (the map creator) are able to improve it, it's gone already... I don't think that the game mode is the problem. It's just that there is not a single map that is good enough. Most of them are just completely imbalanced, or were created when essential game mechanics just didn't exist yet (smokes, molotov etc...). Maybe cs_workout will do better. They (Valve) just look at the play time (all game modes together) and the two maps which are played most stay, the other 2 drop out. For me (may differ on higher/lower skill rating) zoo had the shortest queue time of those three defusal maps most of the time, closely followed by abbey. But that's just competitive matchmaking. There is also deathmatch, arms race etc. which seem to matter as well after all. Btw I would love to see some community Wingman maps being added. The currently playable maps are mostly pretty bad imo...
  12. Yes. https://developer.valvesoftware.com/wiki/CSGO_Map_Publish_Tool
  13. Radix

    [CS:GO] de_austria (WIP)

    Finally found some time to give it a try and opened the ceiling as suggested above. (Thanks @RadimaX and @Squad for sharing your ideas.) I tried out different things, but at the moment it's a mix of second floor+railing and some renovation work going on (so that I could remove the railing partially for easier grenade throws) Also opened the (upper) wall to middle ("main hall") so that you can throw grenades there from the small room shown on the picture ("storage room") (or opposite direction). The room is also larger now. Still not the most exciting room, but all in all I think it's a lot better than it was before.
×
×
  • Create New...