Commit graph

604 commits

Author SHA1 Message Date
John Alanbrook f0876825f1 Significantly improved logging 2024-03-14 09:34:42 -05:00
John Alanbrook 52fe4b56fa Vendored dependencies (no more submodules) 2024-03-13 17:08:14 -05:00
John Alanbrook 962fed0022 Push window functions into C 2024-03-13 16:30:55 -05:00
John Alanbrook bb24fd2bc0 Sprites are now defined in C; gameobject getsets 2024-03-13 03:51:44 -05:00
John Alanbrook 3e8bbdbeb2 Add touch events, clipboard, virtual keyboard 2024-03-12 10:02:02 -05:00
John Alanbrook 4843981527 Move input handling to script only 2024-03-11 22:23:02 -05:00
John Alanbrook 74a59a1e35 Clean up quitting before sokol app is initiated 2024-03-11 15:11:39 -05:00
John Alanbrook 7d1f19bbf5 Fixup makefile for docker builds 2024-03-09 18:22:06 -06:00
John Alanbrook 6897f09e59 add sokol_gfx_ext.h 2024-03-05 23:31:52 -06:00
John Alanbrook 1471966cd2 Preparing for github 2024-03-05 23:14:26 -06:00
John Alanbrook 4ba14ddd91 Separate the ideas of game dimensions and window dimensions 2024-03-05 00:11:34 -06:00
John Alanbrook 7b8be5b4f8 actors have delay now; fix sprite rendering for painters algo 2024-03-04 15:18:11 -06:00
John Alanbrook 6b3cea4ca5 utilize sokol_fetch for game.cdb fetching on load 2024-03-04 11:15:55 -06:00
John Alanbrook 89e3f9b849 move dr_libs from versioned to git submodule 2024-03-03 17:10:08 -06:00
John Alanbrook d46be24c41 change tinysoundfont from versioned to git submodule 2024-03-03 17:07:06 -06:00
John Alanbrook b8af92a138 use cgltf git submodule 2024-03-03 17:02:22 -06:00
John Alanbrook c216dba97b remove versioned clgtf 2024-03-03 17:01:15 -06:00
John Alanbrook bbdf218a9c use stb submodule 2024-03-03 16:58:59 -06:00
John Alanbrook 1a3b322df4 remove stb vendored 2024-03-03 16:50:04 -06:00
John Alanbrook 5a3ef830a4 use sokol git and upgrade 2024-03-03 16:49:34 -06:00
John Alanbrook a43b5dd010 delete sokol 2024-03-03 12:36:43 -06:00
John Alanbrook 83f5019f3e Recusrive mkdir; delete files; path replacers 2024-03-03 05:34:41 +00:00
John Alanbrook f948dac73f font setting 2024-03-02 08:59:50 +00:00
John Alanbrook 0054c7ab2e cdb command line options; packing and playing game; add stb_vorbis 2024-03-02 06:00:35 +00:00
John Alanbrook 1e9b5f6341 create new entities in editor 2024-03-01 17:45:06 +00:00
John Alanbrook 1e432346ff changed make to spawn; unified actor system for entities 2024-02-29 19:54:33 +00:00
John Alanbrook de74b42be2 Add 'use' functionality; remove most global vars 2024-02-27 16:09:15 +00:00
John Alanbrook 4351b4bf20 Update what's in global scope 2024-02-25 23:31:48 +00:00
John Alanbrook 9c8fe27ce4 Command line overhaul 2024-02-23 22:05:30 +00:00
John Alanbrook 5f33ac53b7 clean up docs 2024-02-20 02:31:26 +00:00
John Alanbrook e5d67431b6 add website base 2024-02-09 07:49:52 +00:00
John Alanbrook 7706aa8462 enumerable C abased js 2024-02-01 16:11:09 +00:00
John Alanbrook 262cd50e1a nota leaks fixed 2024-01-31 08:42:15 +00:00
John Alanbrook 46b86a8e92 nota 2024-01-23 16:56:34 +00:00
John Alanbrook dde71d6c02 nota array and object serialization 2024-01-17 01:04:52 +00:00
John Alanbrook e97842e60e nota float 2024-01-16 20:32:31 +00:00
John Alanbrook f330082b8b nota floating point 2024-01-16 18:49:16 +00:00
John Alanbrook 145d5391a0 nota quickjs 2024-01-16 13:29:27 +00:00
John Alanbrook bf57e33629 nota and kim 2024-01-15 18:29:21 +00:00
John Alanbrook 03b7b77b5a update quickjs; nota, kim 2024-01-14 18:56:52 +00:00
John Alanbrook ffb7631a6b js 2024-01-14 16:24:31 +00:00
John Alanbrook eb4abb9f8d particle params 2024-01-04 15:46:28 +00:00
John Alanbrook 6e4b7e63f2 particles and warp zones 2024-01-04 14:14:37 +00:00
John Alanbrook 913c74db96 fix collisions 2024-01-03 23:19:13 +00:00
John Alanbrook da5b7154d7 tests; new callbacks 2024-01-03 20:26:42 +00:00
John Alanbrook 7dfd8e6f9a parallel particles 2024-01-03 18:29:27 +00:00
John Alanbrook 4a4711e38f particle fix 2024-01-03 14:38:17 +00:00
John Alanbrook dbf4b668bb simplex, particles 2024-01-02 13:55:22 +00:00
John Alanbrook 1d776855be particle component 2024-01-01 23:30:42 +00:00
John Alanbrook 2983e9f3c6 tween functions 2024-01-01 13:44:43 +00:00
John Alanbrook 6aa44042d7 particles, sprite animation 2023-12-30 01:08:53 +00:00
John Alanbrook 5bdf311da9 initial physics constraints 2023-12-28 23:38:17 +00:00
John Alanbrook c4b2b23941 add tween; fix collision js ref bug 2023-12-28 13:57:22 +00:00
John Alanbrook 5df1670538 tiling sprites; line drawing 2023-12-27 20:16:43 +00:00
John Alanbrook beee0c50f3 fixes 2023-12-27 16:34:14 +00:00
John Alanbrook 1b4a36f398 fix play crash 2023-12-27 13:04:18 +00:00
John Alanbrook 2880badc98 scale 2023-12-26 21:39:46 +00:00
John Alanbrook 885a2fd190 scale 2023-12-24 17:50:01 +00:00
John Alanbrook 2f086947b9 scaling 2023-12-24 15:14:46 +00:00
John Alanbrook ccfd233207 crash fixes; path rebasing for drag 'n' drop 2023-12-22 17:50:03 +00:00
John Alanbrook 606dfbea93 bug fixing 2023-12-22 13:14:44 +00:00
John Alanbrook 2ae45a5bb8 many bug fixes; const correctness; restrict; memory leaks fixed 2023-12-21 23:21:01 +00:00
John Alanbrook e84d3b60af spline fixes 2023-12-21 16:49:44 +00:00
John Alanbrook a03143463e spline fixes 2023-12-20 23:20:29 +00:00
John Alanbrook a8ee53ec33 drag n drop editor images 2023-12-20 15:19:04 +00:00
John Alanbrook 55d5133414 line rendering 2023-12-19 23:28:45 +00:00
John Alanbrook dacad57577 fix camera, spline 2023-12-19 21:34:36 +00:00
John Alanbrook a1aff79d5c bug fixes; remove texture anims 2023-12-18 23:12:05 +00:00
John Alanbrook 444fb98125 bezier spline controls 2023-12-18 12:45:27 +00:00
John Alanbrook b732d12bed rendering simplified 2023-12-15 18:45:09 +00:00
John Alanbrook 56c8542797 spline editing 2023-12-14 01:53:09 +00:00
John Alanbrook e06d12213f add spline component controls 2023-12-13 14:06:24 +00:00
John Alanbrook 903ffbc607 fix spline segfault 2023-12-13 01:35:34 +00:00
John Alanbrook 2083fb6e9e Fix rotate, scale, move 2023-12-12 14:46:27 +00:00
John Alanbrook d9f6dd5e56 fix compilation bugs; add bignum 2023-12-11 22:59:59 +00:00
John Alanbrook 9fb36f5df3 spline 2023-12-11 14:36:45 +00:00
John Alanbrook 5ad3219379 time 2023-12-10 04:09:15 +00:00
John Alanbrook cb0fa34743 catmull-rom spline custom 2023-12-04 19:38:37 +00:00
John Alanbrook de8c8c9168 transforms 2023-11-30 22:24:26 +00:00
John Alanbrook 6b28e60e3a scene graph 2023-11-30 16:47:59 +00:00
John Alanbrook 03fb016fbc actor delay 2023-11-29 23:31:41 +00:00
John Alanbrook b9db31c84e nodes,gameobjects cleanup 2023-11-29 18:40:13 +00:00
John Alanbrook 7e7514f5d7 dsp node js objects 2023-11-29 13:32:32 +00:00
John Alanbrook f47b6ece21 node free; pitch shift; time scale 2023-11-29 04:48:32 +00:00
John Alanbrook e092599816 freelist 2023-11-28 23:17:40 +00:00
John Alanbrook 1d491e694a Fix race condition for sound ending 2023-11-27 23:04:04 +00:00
John Alanbrook 44febe1c6d audio reworked 2023-11-27 20:29:55 +00:00
John Alanbrook d047ceb07b events 2023-11-22 09:51:43 +00:00
John Alanbrook 811d8bb708 gameobject 3d transform 2023-11-21 23:05:06 +00:00
John Alanbrook 6193bceb74 music stop; sprite alpha blending; sprite sorting; change to anim 2023-11-21 07:07:50 +00:00
John Alanbrook 051d8653fb svg support; reworking of sounds; steam integration and building 2023-11-20 21:57:23 +00:00
John Alanbrook ec8b3c97c4 start steam integration; bug fixes 2023-11-20 13:49:14 +00:00
John Alanbrook cccd472f12 Tween and delay fixes now entity lifetime; spline symmetry 2023-11-17 21:16:13 +00:00
John Alanbrook e712d06244 Fix separation trigger; fix timers; add geometry creation; fix transform errors 2023-11-16 15:27:04 +00:00
John Alanbrook 563bacdb9c flip replaced with mirroring' 2023-11-15 22:42:39 +00:00
John Alanbrook f6161d04b0 transform work 2023-11-14 15:20:09 +00:00
John Alanbrook 51438a5328 update docs 2023-11-12 02:01:42 +00:00
John Alanbrook 21464c44fb Support fat macos binaries; rudimentary support for ios 2023-11-11 15:56:57 +00:00
John Alanbrook 8265eb658f Initial add of proper transforms 2023-11-09 22:44:33 +00:00
John Alanbrook 8bef401be4 fix timer freeing; add window resolution compensation on play; device testing 2023-11-08 07:39:10 +00:00
John Alanbrook 83851ef272 collision layers 2023-11-07 23:24:26 +00:00
John Alanbrook 8c3e8aa539 timers fixed 2023-11-07 18:45:52 +00:00
John Alanbrook 1a6dbfaa88 Add vector swizzling; custom velocity function; per object gravity disabling; max velocities 2023-11-06 13:05:27 +00:00
John Alanbrook 5ee444465e cgltf glb texture pulling 2023-11-04 03:01:30 +00:00
John Alanbrook 366a20e7ed 3d rendering 2023-11-03 13:31:06 +00:00
John Alanbrook 71d5ae7619 Update sokol 2023-11-01 20:33:22 +00:00
John Alanbrook 05a596746e sprite color mixing; make timers and tweens workable 2023-10-31 17:38:23 +00:00
John Alanbrook ecd31eeafa Add enabling and disabling colliders; fix bug related to it 2023-10-31 13:31:56 +00:00
John Alanbrook 92ccb72c04 Add update and physics timings; add instance reversion on save urtype 2023-10-30 22:41:32 +00:00
John Alanbrook 6eefa95546 spline editing works; hollow, etc; add M-g for move all points 2023-10-29 21:39:45 +00:00
John Alanbrook 0fcc2286fa instance saving 2023-10-26 16:48:02 +00:00
John Alanbrook 264a365a1a Reconfigure logging; add markdown output for input controls and important api 2023-10-23 13:08:11 +00:00
John Alanbrook b87cd41e70 Add console object; add intuitive object view; console clear; add play hooks 2023-10-17 17:22:06 +00:00
John Alanbrook 567691edce Bug fixes for input, cleanup on engine exit 2023-10-16 14:40:43 +00:00
John Alanbrook 8229c94a5b fix debug draw shapes 2023-10-12 22:05:49 +00:00
John Alanbrook 8f455476f1 Start and restart play mode 2023-10-11 22:22:41 +00:00
John Alanbrook cff5483325 proper saving 2023-10-10 22:37:58 +00:00
John Alanbrook 661d29a01c level saving 2023-10-09 23:10:10 +00:00
John Alanbrook 5db00e9019 repl tab completion; rgb text coloring 2023-10-09 18:03:12 +00:00
John Alanbrook 9701cd2b4a Mum padding and text wrap; save as works 2023-10-06 17:38:49 +00:00
John Alanbrook 272719736c easier saving 2023-10-05 22:30:17 +00:00
John Alanbrook 03f209ddef proper proto chaining in ur construction 2023-10-05 18:33:43 +00:00
John Alanbrook 8c69dfd71f font caret underlining; repl line editing 2023-10-05 13:02:12 +00:00
John Alanbrook 5578b0f7e4 ur reworking; mum improvements 2023-10-04 22:57:37 +00:00
John Alanbrook e02054bd10 Mum gui init 2023-10-04 13:18:09 +00:00
John Alanbrook 2b402d7a2d removed nuke; restored quickjs due to mem leaks 2023-10-03 22:16:38 +00:00
John Alanbrook ac91e0742a level object saving; transform and physics objects 2023-10-02 12:58:17 +00:00
John Alanbrook 0168e81ffe unify grabbing controls 2023-09-29 13:27:34 +00:00
John Alanbrook 70e4105e1b bucket renamed to edge2d and saves now; proper input blocking with reversed() 2023-09-27 22:40:04 +00:00
John Alanbrook 98ba229c9c correct polygon2d saving and editing 2023-09-27 17:36:32 +00:00
John Alanbrook 7984c90140 remove ur from components 2023-09-27 14:37:20 +00:00
John Alanbrook 1143b9b3dc circle and sprites work with saves 2023-09-26 22:07:51 +00:00
John Alanbrook fe21b84785 Ur saving, ur subtyping 2023-09-26 18:34:02 +00:00
John Alanbrook db8e59a8eb improved UR loading 2023-09-26 13:37:19 +00:00
John Alanbrook 9a1f1408a6 Simplify reparenting; fix deleting objects and copying objects 2023-09-25 21:34:48 +00:00
John Alanbrook 3c43a1fad8 D3D11 build for windows; gif making works everywhere & gif names are now dates 2023-09-25 17:29:04 +00:00
John Alanbrook d52b15e1be aseprite importer 2023-09-25 13:21:02 +00:00
John Alanbrook 0256f4cd15 add gif for animations; unique anim types 2023-09-24 16:26:44 +00:00
John Alanbrook 174a9ed586 Fix Object.merge; add many color palettes, normalize color fns 2023-09-23 17:35:02 +00:00
John Alanbrook a8eb444991 add object merging 2023-09-22 00:51:38 +00:00
John Alanbrook 14d743e704 added colors; repl works 2023-09-21 17:50:39 +00:00
John Alanbrook 47dc6aa1fe flip, scale, angle works for subobject movement 2023-09-21 13:38:23 +00:00
John Alanbrook f6d491b142 tojson for ur and entity separation 2023-09-20 18:33:11 +00:00
John Alanbrook 31331af57d merge made functions into original prototype 2023-09-20 13:11:14 +00:00
John Alanbrook 266ad65ba7 Removed more Javascript "features"; simplified ur with closures 2023-09-19 22:37:54 +00:00
John Alanbrook a57aaeb5d5 Windows now compiles with directx; separated out ur and entity methods 2023-09-19 17:35:12 +00:00
John Alanbrook 45a1b2dfb3 Add config.c for all implementations of headers 2023-09-19 13:36:39 +00:00
John Alanbrook 24a3ee20c6 Add simple macos window cmds; add moon.gif app icon; add editor mode for low power editing 2023-09-19 06:10:00 +00:00
John Alanbrook 27aaa8e05d Metal rendering works; high dpi rendering works; fix sokol_gfx_ext to work with metal without SDL 2023-09-19 02:55:37 +00:00
John Alanbrook 03c9f0c93d Fix web build; make all file searching fns look through slurp/the CDBs first 2023-09-18 17:35:40 +00:00
John Alanbrook 60d078321c Fix Linux and Windows build issues; texture looks in CDBs first 2023-09-18 15:45:51 +00:00
John Alanbrook c9c05d931d JSO compiler; packer; update CDB to 0.80; assets now packed into binary 2023-09-18 12:36:07 +00:00
John Alanbrook 97483d4ce5 Add touchpad controls to editor; move dup to entity after spawned 2023-09-16 03:40:19 +00:00
John Alanbrook d15c4ec6d1 Fix rendering regressions; update image and screen pixel pulling 2023-09-15 17:31:31 +00:00
John Alanbrook d86133a317 Compiles on MacOS; use sokol shader converter for shader x-compilation; update sokol 2023-09-15 08:37:07 +00:00
John Alanbrook e392f65485 Vastly simplified entity stringifying and diffing 2023-09-14 22:37:04 +00:00
John Alanbrook 772c12af0e Editor rotation, scale, grabbing fixed and simplified 2023-09-14 17:49:29 +00:00
John Alanbrook 513a9ac618 Fix gui texture rendering; add input post callback; editor bugs 2023-09-13 21:49:22 +00:00
John Alanbrook 681fb27ae4 Removed global scope static variables; ad-hoc way so timers can function in app or timescaled mode 2023-09-13 12:31:00 +00:00
John Alanbrook 94c2a3c143 JS globbing; remove glob b/c windows; pregame script hooks 2023-09-13 06:08:32 +00:00
John Alanbrook 009609458b Add compile flags to remove bits of engine; sokol_gfx_ext works on windows; remove glad/gl 2023-09-13 04:32:14 +00:00
John Alanbrook e6ef147c40 Editor camera zoom and pan; fix mouse input signals; tex editor to own file; fix grid drawing 2023-09-12 22:19:46 +00:00
John Alanbrook ef95b233e2 gif creation time limit; stretch or scale option 2023-09-12 17:45:54 +00:00
John Alanbrook 0763783284 Gif making controllable from script 2023-09-12 12:56:40 +00:00
John Alanbrook 1ac0c7693d GPU gif creation 2023-09-12 05:02:57 +00:00
John Alanbrook b9316dbbe6 Editor mouse works; remove level.js 2023-09-11 22:09:21 +00:00
John Alanbrook 6b73624c12 Extremely slow gif rendering 2023-09-11 20:07:36 +00:00
John Alanbrook 35c0337837 proper CPU timing; ur type extensions 2023-09-11 07:46:12 +00:00
John Alanbrook cc879746e3 Add ur prototype idea 2023-09-08 06:26:48 +00:00
John Alanbrook a4111b01a5 Prototype duplication fixes; split out engine.js into multiple components 2023-09-07 21:46:35 +00:00
John Alanbrook acecf2fde9 Fix grid drawing; add energy efficient editing; add input down detection 2023-09-06 22:48:08 +00:00
John Alanbrook e78e673576 Quicjs optimizes similar to engine; objects lerp from their prototype 2023-09-06 17:17:16 +00:00
John Alanbrook 7ddf807efd Command line arguments, err messages, help; remove Proxy functions from JS 2023-09-05 22:09:25 +00:00
John Alanbrook 4d577dadb7 Constrained nuklear.h to nuke.c 2023-09-05 14:38:52 +00:00
John Alanbrook 075b9950e0 Replace SQLite3 with TinyCDB; javascript compile output 2023-09-05 15:44:52 +00:00
John Alanbrook 40974a5261 Makefile simplification 2023-09-04 21:27:30 +00:00
John Alanbrook 008458c7f1 Add Sqlite packing; merge render and openglrender; remove ftw from web builds 2023-09-04 14:48:44 +00:00
John Alanbrook f41f547f63 Clang warning fixes; remove unneeded nuklear files; remove assumed window size 2023-09-04 06:20:55 +00:00
John Alanbrook 467f7b29ea Makefile fix to easily make linux, windows, web; DBG flag set correctly 2023-09-03 17:50:02 +00:00
John Alanbrook 3e0dc30645 fix log windows bug; remove unneeded third party files 2023-09-02 11:53:52 +00:00
John Alanbrook 1b1d080528 Compilation targets of WIN, WEB, and LINUX; ftw to nftw for emscripten [2deca9ddb9] 2023-08-31 22:23:24 +00:00
John Alanbrook a58da54994 Remove engine file; add icon support; add QOI and QOA support 2023-08-31 18:00:33 +00:00
John Alanbrook 53ceb9bbf7 Merge sokol app; fix basic input 2023-08-31 08:10:30 +00:00
John Alanbrook 6e4e529541 Clean up window and input, integrate sokol [2deca9ddb9] 2023-08-31 07:05:06 +00:00
John Alanbrook f5f5c16f56 flac, mp3, wav playing 2023-08-30 23:22:32 +00:00
John Alanbrook 6dbfb2afd3 corrected level fn registering; initial move to sokol_audio w/ 32bit float sound [57d84de51f509035] 2023-08-29 22:11:36 +00:00
John Alanbrook a3c6292eb2 Add script compile; level load eval environments 2023-08-29 14:41:40 +00:00
John Alanbrook 9dc04f6ce7 Rework Register and Player objects to remove some global functions 2023-08-28 22:00:53 +00:00
John Alanbrook aad89926d9 Remove vec.h; add editor start, step, pause controls 2023-08-28 02:57:19 +00:00
John Alanbrook 2a79182cac Component, text editor, debug controls; editor modes; input blocking; cmdline docstring output to markdown [8d85349744c4d40a] 2023-08-25 06:30:39 +00:00
John Alanbrook 6ad4fd3ee8 Editor and debug controls more uniform, with docstrings [8d85349744c4d40a] 2023-08-24 21:22:52 +00:00
John Alanbrook f94c62c5c0 Fix grid draw, circle draw, most editor drawing 2023-08-23 22:18:34 +00:00
John Alanbrook 09765f5336 merge sokol 2023-08-23 04:34:36 +00:00
John Alanbrook 54e247433f nuklear input fixed 2023-08-23 04:19:09 +00:00
John Alanbrook 77895c7a45 start sokol integration. 2023-08-23 03:44:09 +00:00
John Alanbrook 3f2ae7ff82 Nuklear renders in GUI pass 2023-08-22 22:15:39 +00:00
John Alanbrook f17c746162 d 2023-08-18 01:13:17 +00:00
John Alanbrook eab7cd0976 d 2023-08-17 01:17:18 +00:00
John Alanbrook e6e4d7ae20 up 2023-07-03 04:05:21 +00:00
John Alanbrook c81c0f22f2 upstairs 2023-06-28 16:35:41 +00:00