Skip to content

skycoin/cxfx

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Disclaimer : It’s all wip, api will change until it matures.

Cx game library.

Installation :

Install cx
mkdir -p ~/go/src/github.com/SkycoinProject/
cd ~/go/src/github.com/SkycoinProject/
git clone https://github.com/SkycoinProject/cx
cd ~/go/src/github.com/SkycoinProject/cx
git checkout develop
Install cxfx :
mkdir -p ~/go/src/github.com/SkycoinProject/
cd ~/go/src/github.com/SkycoinProject/
git clone https://github.com/SkycoinProject/cxfx
Run cxfx on desktop :
cd ~/go/src/github.com/SkycoinProject/cxfx
make tuto0
...
make tuto7
...
make skylight
Run cxfx on android :
cd ~/go/src/github.com/SkycoinProject/cxfx
make tuto0 TARGET=android
...
make tuto7 TARGET=android
...
make skylight TARGET=android
Controls in tutorials & skylight :

shift+(left/right) : Switch camera

ctrl+(left/right) : Switch rendered model

up/down/left/right (or wasd) + mouse : Control the camera

alt+enter : Toggle fullscreen

space : Throw

escape : Exit

WIP :

  • math:
    • matrix
      • basic matrix operations
    • vector
    • quaternion
    • spline
  • graphics:
    • textures:
      • texture 2d
        • generate mipmaps
        • load mipmaps
      • texture cube
        • generate mipmaps
        • load mipmaps
      • texture array
      • texture 3d
      • texture compression
      • srgb
    • shaders:
      • shader permutations
      • shader hot reload
      • shader reflection (parse glsl and extract uniforms)
      • shader uniform binding in gui
    • rendering:
      • physically based renderer
        • kronos implementation
          • debug
        • diffuse irradiance
        • specular irradiance
        • hdr maps
        • custom brdf
        • realtime cubemap
      • normal map
      • emmissive map
      • occlusion map
      • output scene depth in a texture
      • multiple render targets
      • order independent transparency
      • particles
        • moving emitters
      • anti aliasing
      • atmospheric scattering
    • terrain
  • audio:
    • wav 8bps/16bps
    • wav f32/f64
    • 3d audio
    • audio streaming:
    • compressed audio
  • phycics:
    • collision/intersection/response
      • ellipsoid/triangle
      • ellipsoid/ellipsoid
      • ray/ellipsoid
      • ray/OBB
      • ray/AABB
    • gravity
    • torque
  • cameras:
    • free camera
    • first person camera
    • third person camera
    • smooth motions
    • cinematic camera
  • gltf support (loader/renderer/exporter):
    • flat mesh
    • textured mesh
    • hierarchical mesh
    • pbr materials
    • skinning
    • animations
    • cameras
    • lights
    • exporter
  • 2d gui toolkit:
    • game screens
    • label
    • picture
    • scrollbar
    • list
    • json serialization
  • application:
    • resize events
    • toggle fullscreen
    • cli
    • mobile:
      • virtual keyboard
      • ios
      • android
  • skycoin:
    • cxo
    • cxchain

How to contribute :

  • testing the tutorials
  • writing documentation for the tutorials code
  • writing tutorials
  • writing apps with cxfx
  • writing documentation for the lib (should be driven by the tutorials)
  • feedback regarding the usage (what needs to be improved, what functionalities are missing etc)
  • 3d assets (synth 3d model and animations, skycoin hardware...)
  • audio assets (synth sound pack)

Tutorials :

make tuto0

make tuto1

make tuto2

make tuto3

make tuto4

make tuto5

make tuto6

make tuto7

make tuto8

make tuto9

make tuto10

make tuto11

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published