Box3D 0.1.0
A 3D physics engine for games
Loading...
Searching...
No Matches

Data Structures

struct  b3DebugShape
 This is sent to the user for debug shape creation. More...
struct  b3DebugDraw
 This struct is passed to b3World_Draw to draw a debug view of the simulation world. More...
union  b3DebugShape.__unnamed0__
 Tagged union. More...

Typedefs

typedef void * b3CreateDebugShapeCallback(const b3DebugShape *debugShape, void *userContext)
 The user needs to be able to create debug draw shapes for multi-pass rendering to work efficiently.

Enumerations

enum  b3HexColor {
  b3_colorAliceBlue = 0xF0F8FF , b3_colorAntiqueWhite = 0xFAEBD7 , b3_colorAqua = 0x00FFFF , b3_colorAquamarine = 0x7FFFD4 ,
  b3_colorAzure = 0xF0FFFF , b3_colorBeige = 0xF5F5DC , b3_colorBisque = 0xFFE4C4 , b3_colorBlack = 0x000000 ,
  b3_colorBlanchedAlmond = 0xFFEBCD , b3_colorBlue = 0x0000FF , b3_colorBlueViolet = 0x8A2BE2 , b3_colorBrown = 0xA52A2A ,
  b3_colorBurlywood = 0xDEB887 , b3_colorCadetBlue = 0x5F9EA0 , b3_colorChartreuse = 0x7FFF00 , b3_colorChocolate = 0xD2691E ,
  b3_colorCoral = 0xFF7F50 , b3_colorCornflowerBlue = 0x6495ED , b3_colorCornsilk = 0xFFF8DC , b3_colorCrimson = 0xDC143C ,
  b3_colorCyan = 0x00FFFF , b3_colorDarkBlue = 0x00008B , b3_colorDarkCyan = 0x008B8B , b3_colorDarkGoldenRod = 0xB8860B ,
  b3_colorDarkGray = 0xA9A9A9 , b3_colorDarkGreen = 0x006400 , b3_colorDarkKhaki = 0xBDB76B , b3_colorDarkMagenta = 0x8B008B ,
  b3_colorDarkOliveGreen = 0x556B2F , b3_colorDarkOrange = 0xFF8C00 , b3_colorDarkOrchid = 0x9932CC , b3_colorDarkRed = 0x8B0000 ,
  b3_colorDarkSalmon = 0xE9967A , b3_colorDarkSeaGreen = 0x8FBC8F , b3_colorDarkSlateBlue = 0x483D8B , b3_colorDarkSlateGray = 0x2F4F4F ,
  b3_colorDarkTurquoise = 0x00CED1 , b3_colorDarkViolet = 0x9400D3 , b3_colorDeepPink = 0xFF1493 , b3_colorDeepSkyBlue = 0x00BFFF ,
  b3_colorDimGray = 0x696969 , b3_colorDodgerBlue = 0x1E90FF , b3_colorFireBrick = 0xB22222 , b3_colorFloralWhite = 0xFFFAF0 ,
  b3_colorForestGreen = 0x228B22 , b3_colorFuchsia = 0xFF00FF , b3_colorGainsboro = 0xDCDCDC , b3_colorGhostWhite = 0xF8F8FF ,
  b3_colorGold = 0xFFD700 , b3_colorGoldenRod = 0xDAA520 , b3_colorGray = 0x808080 , b3_colorGreen = 0x008000 ,
  b3_colorGreenYellow = 0xADFF2F , b3_colorHoneyDew = 0xF0FFF0 , b3_colorHotPink = 0xFF69B4 , b3_colorIndianRed = 0xCD5C5C ,
  b3_colorIndigo = 0x4B0082 , b3_colorIvory = 0xFFFFF0 , b3_colorKhaki = 0xF0E68C , b3_colorLavender = 0xE6E6FA ,
  b3_colorLavenderBlush = 0xFFF0F5 , b3_colorLawnGreen = 0x7CFC00 , b3_colorLemonChiffon = 0xFFFACD , b3_colorLightBlue = 0xADD8E6 ,
  b3_colorLightCoral = 0xF08080 , b3_colorLightCyan = 0xE0FFFF , b3_colorLightGoldenRodYellow = 0xFAFAD2 , b3_colorLightGray = 0xD3D3D3 ,
  b3_colorLightGreen = 0x90EE90 , b3_colorLightPink = 0xFFB6C1 , b3_colorLightSalmon = 0xFFA07A , b3_colorLightSeaGreen = 0x20B2AA ,
  b3_colorLightSkyBlue = 0x87CEFA , b3_colorLightSlateGray = 0x778899 , b3_colorLightSteelBlue = 0xB0C4DE , b3_colorLightYellow = 0xFFFFE0 ,
  b3_colorLime = 0x00FF00 , b3_colorLimeGreen = 0x32CD32 , b3_colorLinen = 0xFAF0E6 , b3_colorMagenta = 0xFF00FF ,
  b3_colorMaroon = 0x800000 , b3_colorMediumAquaMarine = 0x66CDAA , b3_colorMediumBlue = 0x0000CD , b3_colorMediumOrchid = 0xBA55D3 ,
  b3_colorMediumPurple = 0x9370DB , b3_colorMediumSeaGreen = 0x3CB371 , b3_colorMediumSlateBlue = 0x7B68EE , b3_colorMediumSpringGreen = 0x00FA9A ,
  b3_colorMediumTurquoise = 0x48D1CC , b3_colorMediumVioletRed = 0xC71585 , b3_colorMidnightBlue = 0x191970 , b3_colorMintCream = 0xF5FFFA ,
  b3_colorMistyRose = 0xFFE4E1 , b3_colorMoccasin = 0xFFE4B5 , b3_colorNavajoWhite = 0xFFDEAD , b3_colorNavy = 0x000080 ,
  b3_colorOldLace = 0xFDF5E6 , b3_colorOlive = 0x808000 , b3_colorOliveDrab = 0x6B8E23 , b3_colorOrange = 0xFFA500 ,
  b3_colorOrangeRed = 0xFF4500 , b3_colorOrchid = 0xDA70D6 , b3_colorPaleGoldenRod = 0xEEE8AA , b3_colorPaleGreen = 0x98FB98 ,
  b3_colorPaleTurquoise = 0xAFEEEE , b3_colorPaleVioletRed = 0xDB7093 , b3_colorPapayaWhip = 0xFFEFD5 , b3_colorPeachPuff = 0xFFDAB9 ,
  b3_colorPeru = 0xCD853F , b3_colorPink = 0xFFC0CB , b3_colorPlum = 0xDDA0DD , b3_colorPowderBlue = 0xB0E0E6 ,
  b3_colorPurple = 0x800080 , b3_colorRebeccaPurple = 0x663399 , b3_colorRed = 0xFF0000 , b3_colorRosyBrown = 0xBC8F8F ,
  b3_colorRoyalBlue = 0x4169E1 , b3_colorSaddleBrown = 0x8B4513 , b3_colorSalmon = 0xFA8072 , b3_colorSandyBrown = 0xF4A460 ,
  b3_colorSeaGreen = 0x2E8B57 , b3_colorSeaShell = 0xFFF5EE , b3_colorSienna = 0xA0522D , b3_colorSilver = 0xC0C0C0 ,
  b3_colorSkyBlue = 0x87CEEB , b3_colorSlateBlue = 0x6A5ACD , b3_colorSlateGray = 0x708090 , b3_colorSnow = 0xFFFAFA ,
  b3_colorSpringGreen = 0x00FF7F , b3_colorSteelBlue = 0x4682B4 , b3_colorTan = 0xD2B48C , b3_colorTeal = 0x008080 ,
  b3_colorThistle = 0xD8BFD8 , b3_colorTomato = 0xFF6347 , b3_colorTurquoise = 0x40E0D0 , b3_colorViolet = 0xEE82EE ,
  b3_colorWheat = 0xF5DEB3 , b3_colorWhite = 0xFFFFFF , b3_colorWhiteSmoke = 0xF5F5F5 , b3_colorYellow = 0xFFFF00 ,
  b3_colorYellowGreen = 0x9ACD32 , b3_colorBox2DRed = 0xDC3132 , b3_colorBox2DBlue = 0x30AEBF , b3_colorBox2DGreen = 0x8CC924 ,
  b3_colorBox2DYellow = 0xFFEE8C
}
 These colors are used for debug draw and mostly match the named SVG colors. More...
enum  b3DebugMaterial {
  b3_debugMaterialDefault = 0 , b3_debugMaterialMatte , b3_debugMaterialSoft , b3_debugMaterialDead ,
  b3_debugMaterialGlossy , b3_debugMaterialMetallic
}
 Debug draw material preset. More...

Functions

uint32_t b3MakeDebugColor (b3HexColor rgb, b3DebugMaterial material)
 Pack an RGB color with a material preset for debug draw.
b3HexColor b3GetGraphColor (int index)
 Get the visualization color assigned to a constraint graph color slot.
b3DebugDraw b3DefaultDebugDraw (void)
 Create a debug draw struct with default values.

Detailed Description


Data Structure Documentation

◆ b3DebugShape.__unnamed0__

union b3DebugShape.__unnamed0__

Tagged union.

Data Fields
const b3Capsule * capsule Capsule shape.
const b3CompoundData * compound Compound shape.
const b3HeightFieldData * heightField Height-field shape.
const b3HullData * hull Convex hull shape.
const b3Mesh * mesh Mesh shape with scale.
const b3Sphere * sphere Sphere shape.

Typedef Documentation

◆ b3CreateDebugShapeCallback

typedef void * b3CreateDebugShapeCallback(const b3DebugShape *debugShape, void *userContext)

The user needs to be able to create debug draw shapes for multi-pass rendering to work efficiently.

These user shapes are created and destroyed via callback so they can be bound to shape lifetime and scaling updates.

Enumeration Type Documentation

◆ b3DebugMaterial

Debug draw material preset.

Optionally packed into the unused high byte of a b3HexColor (or b3SurfaceMaterial::customColor) to drive the renderer's PBR roughness and metalness. The low 24 bits stay RGB, so a plain 0xRRGGBB color reads as b3_debugMaterialDefault and keeps the renderer's per-body-type look.

◆ b3HexColor

Function Documentation

◆ b3GetGraphColor()

b3HexColor b3GetGraphColor ( int index)

Get the visualization color assigned to a constraint graph color slot.

The last index (B3_GRAPH_COLOR_COUNT - 1) is the overflow color.

◆ b3MakeDebugColor()

uint32_t b3MakeDebugColor ( b3HexColor rgb,
b3DebugMaterial material )

Pack an RGB color with a material preset for debug draw.

The preset rides in the high byte where the color converters ignore it.