rccargo
RC-Car Simulator
- ODE physics
- 1/10 scale RC-Car
- Multiplayer support(now:websocket -> future:WebRTC-base)
- Gamepad or Mouse or Touch Input
DEMO: https://rccargo.arukascloud.io
Build and Run
OS-X
brew install ode --with-shared --with-double-precision
go get -u github.com/ianremmler/ode
go get -u github.com/nobonobo/rccargo
cd $GOPATH/src/github.com/nobonobo/rccargo; rcccargo
Linux
- ode install (./configure --with-shared --with-double-precision --with-libccd)
go get -u github.com/ianremmler/ode
go get -u github.com/nobonobo/rccargo
cd $GOPATH/src/github.com/nobonobo/rccargo; rcccargo
Open Browser
open http://localhost:8080/
Frontend
Backend
- go websocket and static-files server
- world simulation by ode
Open Dynamics Engine
Site:
http://www.ode.org
go-wrapper:
https://github.com/ianremmler/ode
document:
https://godoc.org/github.com/ianremmler/ode
Concept
- scale 1/10 only.
- one type chassis 4wd+RS540 only.
- no gimmick.
- no customize.
- player camera human-eye only.
- reply camera few pos variety.
- free-run style.
- ghost of fastest-lap.
- physics-sim-server
- webgl-renderer+player-input
coordinate system
GL: right-hand
- X: left(-)-right(+)
- Y: front(+)-back(-)
- Z: up(+)-down(-)
world params
world parameters:
- ERP = 0.8
- CFM = 1.0e-5
- gravity = -9.8m/s2(Z)
ode compositions
-
World(motion-space)
-
Space(collision space)
join and update sequence
- open brouwser assets/index.html
- ws connect to host/ws
- new vehicle add to world
- jsonrpc call "World.Update"
- World render by WebGL
- repeat to 4.