Skip to content

Giymo11/cgue18-heikousen

Repository files navigation

TU Wien - CGUE SS_2018

licenses

models

  • duck - Copyright 2006 Sony Computer Entertainment Inc. libs
  • tiny_gltf.h

controls

z translation: W, S x translation: A, D y translation: R, F

y rotation: Q, E z rotation: mouse x x rotation: mouse y

counteract angular momentum: Y counteract linear momentum: X

close game: ESC

start replay: spacebar

How to install deps (Arch):

  • install "bullet", "glfw-x11", "vulkan-headers", "vulkan-icd-loader", "vulkan-extra-layers", "spirv-tools", "glslang", "glm"
  • mkdir build
  • cd build
  • cmake ..
  • make
  • bin/heikousen

How to install deps (Win64) :

  • Install cmake and have it in PATH
  • git submodule init
  • git submodule update
  • Start Visual Studio Dev Console x64 run call build_deps

How to build V8 (Win64)

  • Download and execute the Windows 10 SDK Installer, but only check "Debugging Tools for Windows" during the installation.
  • Download depot_tools and extract it to extern/depot_tools.
  • Run call build_v8

TODO:

  • plan architecture
  • do concept
  1. configuration
  2. hello world vulkan
  3. val layers? (works in linux I guess)
  4. refactor for hotkey use
  5. pipeline rebuild (wireframe etc)
  6. bullet colldet/collresp test
  7. bullet based game over condition
  8. [-] script engine
  9. movement in planning phase
  10. bullet based win condition
  11. movement tracking / replay system
  12. model loading
  13. textures (multiple maps)
  14. level design (= moving objects)
  15. GAME DAY
  16. Frustum Culling
  17. Hierarchical Animation Using Physics Engine
  18. [/] HDR
  19. [/] HUD
  20. BSP
  21. DoF
  22. normal maps
  23. [/] level design
  24. GAME DAY
  25. sound design
  26. polishing

game day requirements

  • Freely movable camera (both position and orientation can be controlled)
  • Moving objects
  • Texture Mapping
  • Simple lighting and materials
  • Controls
  • Basic Gameplay
  • Adjustable Parameters

The following parameters should be adjustable without recompiling the application:

  • Screen Resolution (Width/Height)
  • Fullscreen-Mode (On/Off)
  • Refresh-Rate (see glfwWindowHint(GLFW_REFRESH_RATE, ...); )
  • Brightness (Beamers are usually very dark, this parameter should control how bright your total scene is).

game ideas

heikousen (= parrallel lines)

  • 3d movement (like elite dangerous)
  • plan your movement through the (static) level
  • then see your move played out with all the dynamic elements active

gameplay ideas

  • have static elements already present in planning
  • have elements react to your previous moves
  • have your previous ghost's explosions influence the current run
  • score?
  • have some kinda interactivity during the run (one shot, shield, particle elimination, automatic course correction)
  • rewind?

effects list

mandatory:

  • Light Mapping (optional in separate textures or calculation at startup)
  • Physics Interaction (collision detection + collision response)
  • Heads-Up Display using Blending

for sure:

  • (0.5) + separate texture light maps
  • (0.5) simple normal mapping
  • (1) scripting language?
  • (1) HDR rendering and tone mapping
  • (1) BSP trees

PBR shader?

software used:

  • cmake (build tool)
  • vulkan (graphics)
  • bullet (physics)
  • sound?

resources

scripting

sound

bullet

vulkan

cmake

models

raffy recommends:

json parsing (for configs)

  • "json for modern c++" @github

Used references

About

TU Wien CGUE 18 game in vulkan

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published