Counter-Strike 2 Workshop Tools/BreakableWindows

From Valve Developer Community
Jump to navigation Jump to search
Note.pngNote:This tutorial assumes a basic familiarity with ModelDoc Editor.
Icon-Bug.pngBug:func_breakable does not spawn gibs on break in Counter-Strike 2 Counter-Strike 2. It's recommended to use prop_dynamic instead  [todo tested in ?]
Icon-Important.pngImportant:Glass material should have dynamic expressions configured, otherwise there would be no break pieces.

example model can be found in 🖿Counter-Strike Global Offensive\content\csgo\workshop\content_examples\breakable_glass\breakable_glass_01.vmdl

model doc outliner setup for breakable glass


Creating base window model

Todo:  unscrew that and make it more readable and consistent
Tip.pngTip:it is not needed to have custom model file since primitive shapes are created inside of ModelDoc
  • add RenderMeshFile to outliner, cancel the file selection and keep the created note, It should appear as empty node, change RenderMeshFile Name to something like "window"

RenderMeshFile:

Name: window
Source file: <none>
  • add Mesh Operation Stack as parent of RenderMeshFile
  • add Box Primitive as child of Mesh Operation Stack , set desired `Box dimensions` (x-thickness,y-width,z-height), but keep `Position` at [0,0,0], for this example, use "workshop/content_examples/breakable_glass/breakable_glass_01.vmat" material
  • add UV map planar custom stretch it so only single part of window texture fills model (note: you need to unselect this node and compile to preview how uv will look)
  • add PhysicsHullFromRender with following properties:
Surface Property: glass
Collision Property: window
  • add prop_data with following properties:
Base Prop: Glass.Window
Allow as static prop: true
Health: 1

Adding Break pieces to model

todo

Creating custom glass material

todo