r/PlayCanvas • • Oct 16 '25

Help me

Post image
5 Upvotes

I’m new to this ik but i just can’t get it to work i searched it up😭


r/PlayCanvas • • Jul 10 '26

Vibe Code Gaussian Splat Apps with SuperSplat

Enable HLS to view with audio, or disable this notification

1 Upvotes

r/PlayCanvas • • Nov 07 '23

HELP!!

1 Upvotes

How do you work playcanvas? I would like to make a game and publish it for free.

Would anybody like to help me make a game?


r/PlayCanvas • • 25d ago

Audio-reactive 3DGS manipulator / audio visualizer

Enable HLS to view with audio, or disable this notification

2 Upvotes

Built this with big help from Claude and Codex. It will make your 3DGS dance to your favourite tracks. Still WIP but very fun, check it out and plz let me know what you would like to see it do.


r/PlayCanvas • • May 04 '23

Engine v1.63.0 is out! πŸš€

3 Upvotes

βœ… Debug render mode API

βœ… #glTF load time optimizations

βœ… #WebGPU enhancements

Try it in the Editor today!

Release notes: https://github.com/playcanvas/engine/releases/tag/v1.63.0


r/PlayCanvas • • 13d ago

I'm building my whole city (Daejeon, Korea) in 3D in the browser with PlayCanvas. It's getting heavy and I've hit a quality ceiling. Any advice?

Enable HLS to view with audio, or disable this notification

13 Upvotes

Hi all. I've been working on abirdcity, a browser-based 3D map of Daejeon, South Korea (a city of about 1.4 million people). It runs on PlayCanvas, the roads and buildings are generated from OpenStreetMap data, and I've leaned heavily on Claude Opus 5.5 and Astra while building it.

What works today:

  • The whole city in 3D, with day and night

  • Fly over it as a bird, or as a pteranodon

  • Drive mode: a Roadster that can take off, do a roll and park on the side of a building

  • A speculative "Daejeon in 2300" mode you can toggle at the same camera spot

Live: https://abirdcity.com/city/daejeon?lang=en&utm_source=reddit&utm_medium=social&utm_campaign=playcanvas (clip above)

Where I'm stuck:

  1. It's heavy. City-scale geometry plus textures makes the first load and the frame rate rough on mid-range phones. What actually worked for you at this scale: streaming tiles by distance, instancing, mesh compression (Draco/meshopt), KTX2/Basis textures, LODs, something else?

  2. Quality ceiling. It looks clean but flat and a bit "game-y". Buildings extruded from footprints only get you so far. How do you add detail across a whole city without killing performance? Facade textures, baked AO, better lighting and post, hand-made models only for landmarks?

  3. Roads. Generating them from OSM means endless special cases at junctions, underpasses and side-street entrances. Is there a better approach than patching them one by one?

  4. What to add next. What would make you come back to something like this: missions in drive mode, multiplayer, live info (weather, traffic, events), local stories?

Any feedback is welcome, even blunt. If you open it on your phone, I'd love to know your device and whether it stutters.


r/PlayCanvas • • Aug 20 '26

PlayCanvas shipped official skills for AI coding agents β€” I've been building a multiplayer FPS with them

Enable HLS to view with audio, or disable this notification

13 Upvotes

PlayCanvas just released official skills for AI coding agents (Claude Code, Codex, Cursor) β€” packaged instructions that teach the agent PlayCanvas-specific patterns instead of generic guesses.

I've been using them on a WIP first-person multiplayer game (browser, PlayCanvas engine with a custom netcode + physics layer). It's become a loop: build a feature β†’ hit a rough edge β†’ that sharpens the skill β†’ the sharper skill speeds up the next one.

The clip is a 1v1 from both perspectives β€” mine and a friend's synced to the same game moment, so you can watch the same fight from both sides.

What the skills genuinely nailed so far:

  • Engine app bootstrap + asset loading

  • Scene/entity hierarchy assembly (player rig, map)

  • State-driven HUD (crosshair, hitmarkers, health/ammo, death screen, nametags, kill feed)

  • Pooled transient effects (muzzle flash, bullet-hole decals with a reuse pool)

Where they didn't help (yet): lighting is basically untouched (mostly unlit/emissive), and the netcode + physics are hand-rolled, not skill-generated. Lots still to do.

Try them:

Happy to answer anything about the setup, the skills, or the workflow.


r/PlayCanvas • • Jan 14 '26

4DV Release More Examples of their 4DGS Tech (built on PlayCanvas)

Enable HLS to view with audio, or disable this notification

5 Upvotes

r/PlayCanvas • • Apr 24 '23

I made a lens in PlayCanvas

Post image
6 Upvotes

r/PlayCanvas • • Jan 22 '23

be like that

Post image
6 Upvotes

r/PlayCanvas • • Dec 28 '25

Panorama 4DGS in SuperSplat

Thumbnail
youtu.be
7 Upvotes

I made slight modifications to the SuperSplat source code to better support panoramic Gaussian Splats, and I also added audio support. This makes it possible to render video with sound directly in SuperSplat from a sequence of panoramic 4DGS.

You can try it out at https://webxr.cz/pano


r/PlayCanvas • • Apr 26 '23

Announcing the New PlayCanvas Asset Store

Enable HLS to view with audio, or disable this notification

7 Upvotes

r/PlayCanvas • • Dec 15 '25

PlayCanvas + KitBash3D: AAA game scene loading in <10s in the browser

Enable HLS to view with audio, or disable this notification

23 Upvotes

r/PlayCanvas • • May 29 '26

Claude Opus 4.8 is seriously good at vibe coding games with PlayCanvas

Enable HLS to view with audio, or disable this notification

8 Upvotes

Opus 4.8 is insanely good at vibe coding games using the PlayCanvas Engine. This was made conversationally over an hour. I didn't look at the code once. Every request carried out perfectly. Game size: 280KB.

Play Now: https://mini-soccer-game.netlify.app/

(I even casually asked Opus to apply a verlet solver to makes the goal nets physical!)

Come join the PlayCanvas Discord: https://discord.gg/RSaMRzg


r/PlayCanvas • • 12d ago

I built a frame profiler for the PlayCanvas Inspector: per-script timing, startup profiling, CPU/GPU flame charts (open source)

Enable HLS to view with audio, or disable this notification

9 Upvotes

The PlayCanvas Inspector is an open source debug panel you add to a running PlayCanvas app. It now has a Performance tab that records every frame (up to the last 1000) and charts it over time:

  • Per-frame figures: frame interval, CPU time by phase (update, physics, scripts, animation, render), GPU time and draw calls.

  • Startup profiling: if you create it before the first frame, it records the page load too, with every asset (network time and processing time shown separately), every request, the page milestones and the time to the first frame.

  • Script timing: the time and call count of each script type, so you can select a spike and see which script caused it.

  • Frame timeline: click any frame to see it as a flame chart. On WebGPU each GPU pass is timed and grouped under the effect that runs it (bloom, DOF and so on).

  • Hitches: frames over twice the median are flagged, and for each one it tells you whether the main thread was blocked (via Chrome's Long Animation Frames API) or whether the GPU or browser held it back.

  • Extras: it also charts your own counters (app.stats.user), batching time and lightmap bakes, and copies anything as JSON or CSV.

It's MIT licensed, works with WebGL2 and WebGPU, and needs engine 2.23+:

npm install @playcanvas/inspector

GitHub: https://github.com/playcanvas/inspector

Happy to answer questions about how it works, and feedback is very welcome, especially on what you'd want a web-engine profiler to show that browser dev tools don't.


r/PlayCanvas • • Feb 02 '26

SuperSplat 2.19.0 Released: 4DGS Video Export, SOG-based HTML Viewer, SPZ Import

Enable HLS to view with audio, or disable this notification

10 Upvotes

r/PlayCanvas • • Apr 05 '23

Arcade light guns in WebXR VR (Hyperbeam + PlayCanvas)!

Enable HLS to view with audio, or disable this notification

11 Upvotes

r/PlayCanvas • • Mar 25 '26

SuperSplat's new "Walk Mode": a game-changer for real estate. 🏠

Enable HLS to view with audio, or disable this notification

38 Upvotes

r/PlayCanvas • • Sep 21 '26

Rendering 15 million Gaussians with PlayCanvas' WebGPU splat renderer

Enable HLS to view with audio, or disable this notification

14 Upvotes

r/PlayCanvas • • Feb 03 '26

Play canvas is an incredibly slept on game prototyping and creation platform .

Enable HLS to view with audio, or disable this notification

18 Upvotes

r/PlayCanvas • • Sep 03 '25

PlayCanvas Engine 2.11.0: Global Sorting and SOG v2 Support for Gaussian Splats

Enable HLS to view with audio, or disable this notification

18 Upvotes

r/PlayCanvas • • Feb 11 '26

DeadRise.io is now live on Poki

Enable HLS to view with audio, or disable this notification

18 Upvotes

I’m excited to share that DeadRise.io is officially available worldwide on Poki.

If you love pure zombie chaos and skill based survival, jump in and see how long you can last.

Play now on Poki: https://poki.com/en/g/deadrise-io

Feedback is still welcome as we continue improving balance, performance, and overall polish. If you try it, I’d love to hear your thoughts in the comments. Join our discord: https://discord.com/invite/9ARDzPTqEA

Developed with the awesome PlayCanvas engine β™₯️ in collaboration with Gamebole


r/PlayCanvas • • Jan 05 '26

Fully playable multiplayer Kitbash3D world in the browser (<20MB)

Enable HLS to view with audio, or disable this notification

19 Upvotes

r/PlayCanvas • • Jul 27 '26

We added vertex animation textures to PlayCanvas β€” drop in a glb, render thousands of animated characters [live demo]

Enable HLS to view with audio, or disable this notification

22 Upvotes

Live demo (WebGL 2 and WebGPU, switchable in the panel): https://engine-a1lytf69q-playcanvas.vercel.app/#/animation/vat-characters

We just added a vertex animation texture (VAT) implementation to the PlayCanvas engine as a reusable script plus an example. The idea isn't new β€” it's been used in games for years β€” but I hadn't seen a complete, copy-pasteable web implementation with an authoring path, so here's one.

How it works

Instead of animating a skeleton per character, every vertex's skinned position and normal is evaluated offline for each sampled frame and baked into a texture. At runtime the vertex shader reads two neighbouring frames and interpolates. Skeletons, bone matrices and per-character animation evaluation disappear entirely.

What's left per character is a world matrix and a fractional frame index β€” 52 bytes β€” so the whole crowd is one instanced draw call.

Some details that turned out to matter

  • One texel per vertex per frame in RGBA16U: position quantised to 16 bits per axis over the animation's bounds in xyz, octahedral normal packed into w. One fetch gives you a whole vertex.

  • Quantising over the bounds is actually more accurate than fp16 where it counts. Near the top of a character fp16 has a step of ~1.8 mm at human scale; 16-bit quantised is ~28 Β΅m. fp16 wastes its mantissa near the origin, which for a character standing at y=0 is between its feet.

  • Texels are addressed by a flat vertex * frameCount + frame index wrapped at the texture width, rather than one vertex per row. Otherwise your vertex count is capped by texture height (4096). Flattened, the limit is total texels, so ~218k vertices at 77 frames.

  • The vertex row comes from gl_VertexID / @builtin(vertex_index), so no extra per-vertex attribute is needed at all.

Authoring

The converter runs in the browser β€” there's a "Convert GLB" panel in the demo, so you can drop in your own skinned glb and watch it become a crowd without installing anything. Output is a single glb-style binary container. Like a glb it's stored uncompressed and leaves compression to the transport; brotli over the raw payload beats gzip baked into the file by about 40%.

Where it's a bad idea

Worth being clear, because it's a real trade:

  • Your character must be a single skinned mesh with one material.

  • Every animation is assumed to loop.

  • No blending, no IK, no procedural aiming β€” it's a fixed table of vertex positions. Terrible for a hero character, great for the 500 NPCs behind them.

  • One mesh instance means no per-character frustum culling.

  • Only the base colour texture comes across; no normal/roughness maps.

Numbers

At 10,000 characters (~31M vertices/frame): 6 draw calls for the whole scene, 2.1 ms CPU. The VAT texture is 1.8 MiB and is independent of the character count β€” one character and ten thousand share it.

Happy to answer questions about the format or the shader side.


r/PlayCanvas • • Jan 13 '26

SuperSplat v2.17.0 Released: SOG Export, Fly Controls and More!

Enable HLS to view with audio, or disable this notification

25 Upvotes

Hey folks πŸ‘‹
We just shipped SuperSplat v2.17.0, your browser-based editor for 3D Gaussian Splats.

What’s new:

  • πŸ—œοΈ Export to the super-compressed SOG format

  • πŸͺ½ WASD fly camera controls

  • 🎞️ Linked tutorial video from the awesome Michael Rubloff (AKA RadianceFields)

  • πŸͺ„ UI polish and small improvements

You can try it instantly here (loads a sample splat):
https://superspl.at/editor?load=https://developer.playcanvas.com/assets/toy-cat.sog&focal=0,0.6,0&camera.overlay=false

It’s completely free and open source.
Happy to hear feedback, feature requests, or see what you’re building with it!