Use WASD Inspired by 1988 mac game "The Colony" Update 21th July: added entity shader with 3 entities chair, plant & barrel Update 8th July: code refactored to use goboscript: added wall shader with 4 geometric patterns & floor shader with 3 geometric patterns Made with goboscript https://github.com/slyi/vectorSector
Changes in this version: 1. Fully replaced the dda raycaster (reduced 3d calc time to just 33% compared to previous optimized raycaster, most noticeable in long rooms) 2. Moved to 3d vector edges with baked sectors (doom style) to reduce vertex calc to just current room and if open door the next room 3. used a span buffer to avoid overdraw (no painter algorithm) and then paint a pattern in wall shader with drawCommands primitives 4. Room Floors: checkboard for small rooms using baked room tiles with standard 2 triangle quads. I tried for 2 days to get trapezoid floors but was too slow & buggy. The offsetFloorGrid for corridors uses a baked room Bounding Box. For large rooms fall back to a standard grid. Disabled @griffpatch mode7 floor which was clipped to max wall depth to reduce horizon overdraw, but I found dda floors too slow and I wanted to keep the vector feel. Finished a basic entity and sorting (barrel, flower pots, chairs). I thinking of creating layered svg billboard entities, to allow a crude parellaxing effect as move around the entity but used instead a x mirror billboard image and pen decorations to give depth illusion. Don't know if I should continue this, losing motivation. Python code included to generate sector lists from 1d 64*64 map.txt