changeset 41:cc8724250d65

fix: organize notes a bit
author Sam <sam@basx.dev>
date Wed, 18 Jan 2023 14:15:08 +0700
parents 2771db8d4276
children ae20734fde0b
files README.md notes
diffstat 2 files changed, 50 insertions(+), 52 deletions(-) [+]
line wrap: on
line diff
--- a/README.md	Wed Jan 18 13:52:48 2023 +0700
+++ b/README.md	Wed Jan 18 14:15:08 2023 +0700
@@ -1,3 +1,52 @@
+Semicongine
+===========
+
 Hi there
 
-This is currently only for my test codes, maybe, one far day, it will become a small rendering engine.
+This is a very simplistic little game engine, mainly trying to wrap around vulkan and the operating system's windowing, input and audio system.
+This is using the last programming language you will ever need, [Nim](https://nim-lang.org/)
+
+Roadmap
+-------
+
+Still tons to do, but it feels like the worst things (except audio maybe?) are over the hill.
+
+Rendering:
+
+- [x] Vertex attributes, vertex data
+- [x] Shaders (allow for predefined and custom shaders)
+- [x] Uniforms
+- [x] Per-instance vertex attributes (required to be able to draw scene graph)
+- [ ] Textures
+- [ ] Depth buffering
+- [ ] Mipmaps 
+- [ ] Multisampling 
+- [~] Instanced drawing (using it currently but number of instances is hardcoded to 1
+
+Build-system:
+- [x] move all of Makefile to config.nims
+
+Asset handling:
+- [ ] Mesh files (Wavefront OBJ, MTL) (use something from sketchfab for testing, https://sketchfab.com/)
+- [ ] Image files (BMP RGB + BMP Graysscale for transparency)
+- [ ] Audio files (WAV)
+
+Quality improvments:
+
+- [ ] Better scenegraph API
+- [ ] Better rendering pipeline API
+
+Other:
+- [x] Mouse/Keyboard input handling
+  - [x] X11
+  - [x] Win32
+- [ ] Config files ala \*.ini files (use std/parsecfg)
+- [ ] Input-mapping configuration
+- [ ] Audio (Alsa, Windows Waveform API?)
+- [ ] Game controller input handling
+
+Advanced features:
+- [ ] Text rendering
+- [ ] Animation system
+- [ ] Sprite system
+- [ ] Particle system
--- a/notes	Wed Jan 18 13:52:48 2023 +0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-Game ideas:
-- mining-game with structure simulation, crashing mineshafts, etc.
-- top-down 2d shooter (wild west?) with one room per scene, fixed camera
-- Top-down 2d shooter with autoshoot (-> what is the challenge? position? cover? effects?)
-- Clean up something
-- Defend house, fortress (embassy?), against burglar, enemies, receive guests, top down shooter
-- Typing game, mechanics ala "cook, serve, delicious" but different theme, maybe war, coffee serving, 
-  -> add spin on it somehow?
-- combine the above two? top-down 2d action shooter with "typing-based" mechanics for reloading, building, etc
-  -> top-down shooter with WASD + Mouse action
-  -> use number keys to access equipment (gun, backpack, body)
-  -> use shortkeys to manipulate things
-- Coffee selling ala "cook, serve, delicious"
-  - operate grinder, coffee machine, etc with keys
-  - client queue
-  - Manage shop?
-
-Rendering:
-
-- [x] Uniforms
-- [x] Per-instance vertex attributes (required to be able to draw scene graph)
-- [ ] Textures
-- [ ] Depth buffering
-
-Quality improvments:
-
-- [ ] Mipmaps 
-- [ ] Multisampling 
-- [ ] Better scenegraph API
-- [ ] Instanced drawing
-
-Build-system:
-- [x] move all of Makefile to config.nims
-
-Asset handling:
-- [ ] Mesh files (Wavefront OBJ, MTL) (use something from sketchfab to get started, e.g. https://sketchfab.com/nigelgoh)
-- [ ] Image files (BMP RGB + BMP Graysscale for transparency)
-- [ ] Audio files (WAV)
-
-Other:
-- [ ] Input handling
-  - [ ] X11
-  - [ ] Win32
-- [ ] Config files ala *.ini files (use std/parsecfg)
-- [ ] Audio (Alsa, Windows Waveform API?)
-
-Features:
-- [ ] Text rendering
-- [ ] Animation system
-- [ ] Sprite system
-- [ ] Particle system