CrowPSXDocumentationv1.1.0Get CrowPSX ↗
Docs/Demo scene

INTEGRATION

Demo scene

Demo controls, input systems, camera scripts, and outline setup.

PACKAGE VERSION 1.1.0
On this pageControlsOutlines under URPInput and UI requirementsSample scripts

Open Assets/CrowPSX/Demo.unity to explore the included CrowPSX materials, Terrain, Nature, vertex-painted surfaces, particles, depth-volume decals, and procedural skybox in one playable scene.

The demo is self-contained: every model, texture, material, sound, prefab, and lightmap it references lives inside Assets/CrowPSX, so it works without any other package installed.

Controls#

  • WASD: move
  • Mouse: look
  • Left Shift: sprint
  • Space: jump
  • F: toggle the flashlight
  • Tab: show/hide the controls list
  • V: noclip

The controls list fades once the player begins moving and hands over to a subtle bottom bar: a black gradient carrying the key prompts on the right and, whenever the player looks at a CrowPSXInspectableObject, that object's description on the left.

Outlines under URP#

The demo camera carries a CrowPSX Outline Support component. Under URP the outline is a separate pass that the renderer has to be told to draw, and the usual way to do that (a renderer feature) lives in a project asset that a scene cannot bring with it. The component makes the same request per camera instead, so the demo shows its outlines as soon as the scene is opened, in any URP project, with nothing configured. Under Built-in it does nothing and can stay where it is.

Input and UI requirements#

The sample scripts work with any Active Input Handling setting. They use the legacy Input Manager when it is enabled, and read the keyboard and mouse through the Input System when it is the only backend, which is the default for new Unity 6 projects. Nothing needs to be changed in Player Settings to run the demo.

The controls overlay uses Unity UI (com.unity.ugui), which is included in standard Unity 2022.3 and Unity 6 projects. The CrowPSX shaders themselves do not depend on the sample controller or Unity UI.

Sample scripts#

The reusable demo scripts are under Assets/CrowPSX/Samples/Scripts in the CrowPSX.Samples namespace:

  • CrowPSXFirstPersonMovement
  • CrowPSXMouseLook
  • CrowPSXHeadBob
  • CrowPSXFootstepSystem
  • CrowPSXStaminaSystem
  • CrowPSXPlayerHUD
  • CrowPSXInspectableObject
  • CrowPSXTransformPath
  • CrowPSXLightingModeTester

CrowPSXTransformPath moves an object through a list of waypoint Transforms, carrying rotation and optional scale at each one. It was built to sweep a lamp across a wall of materials: timing is either a constant speed, so a long leg takes proportionally longer and the light never appears to accelerate between segments, or a fixed number of seconds per segment when the beats matter more than the pace. It also offers smoothed or straight-line paths, Once/Loop/PingPong looping, per-segment easing, and a dwell time at each waypoint.

CrowPSXPlayerHUD builds the whole HUD in code - no canvas to wire up - and takes the JetBrains Mono fonts from Assets/CrowPSX/Editor/Font. Add CrowPSXInspectableObject to anything you want described: write its Title and Details, and the HUD prints them in a bordered box in the bottom-left corner, with a thin leader line running from the box to the object itself. The box grows to fit the text. One component covers a whole hierarchy - put it on the root of a multi-mesh prop and looking at any child reads out the same thing. A child with its own CrowPSXInspectableObject overrides the parent, and Include Children turns the inheritance off. The object needs a collider to be looked at; a trigger works as well as a solid one.

CrowPSXInspectableObject also switches on the CrowPSX outline of its own renderers while the player is looking at it, on the same detection that drives the readout. Highlight Outline turns the behavior off per object. The component instances that object's materials at startup and enables their outline pass with the outline itself switched off, so a prop can ship with no outline in the project and still light up when seen; the project's material assets are never modified. With Override Outline Look on it draws in Highlight Color and Highlight Width, and with it off the material's own outline color and width are used instead. Props whose shader has no outline (terrain, skybox, particles, decals) simply never highlight.

CrowPSXLightingModeTester shows one set of CrowPSX materials at a chosen realtime lighting mode without authoring a duplicate material per mode. It clones the materials on the renderers it drives, so the source assets are never modified.

They are demonstration components rather than a required runtime dependency of the shader package.

CrowPSX 1.1.0 · CrowBite
Shader reference and setup guides.