Wed, 02 Jul 2025 23:21:17 +0200
resolve TODOs regarding input.h
a) mouse position must be integer, because it can be negative (though rarely)
b) we should not trade "access complexity" for space in the scancodes array
0 | 1 | # Copyright 2023 Mike Becker. All rights reserved. |
2 | # | |
3 | # Redistribution and use in source and binary forms, with or without | |
4 | # modification, are permitted provided that the following conditions are met: | |
5 | # | |
6 | # 1. Redistributions of source code must retain the above copyright | |
7 | # notice, this list of conditions and the following disclaimer. | |
8 | # | |
9 | # 2. Redistributions in binary form must reproduce the above copyright | |
10 | # notice, this list of conditions and the following disclaimer in the | |
11 | # documentation and/or other materials provided with the distribution. | |
12 | # | |
13 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | |
14 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |
15 | # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | |
16 | # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE | |
17 | # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | |
18 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | |
19 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | |
20 | # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | |
21 | # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | |
22 | # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | |
23 | # POSSIBILITY OF SUCH DAMAGE. | |
24 | # | |
25 | ||
84
e4116b4b5774
put snake test program into separate directory
Mike Becker <universe@uap-core.de>
parents:
82
diff
changeset
|
26 | include ../../config.mk |
e4116b4b5774
put snake test program into separate directory
Mike Becker <universe@uap-core.de>
parents:
82
diff
changeset
|
27 | |
e4116b4b5774
put snake test program into separate directory
Mike Becker <universe@uap-core.de>
parents:
82
diff
changeset
|
28 | BUILD_DIR=$(srcdir)/build/test |
e4116b4b5774
put snake test program into separate directory
Mike Becker <universe@uap-core.de>
parents:
82
diff
changeset
|
29 | LIB_ASCENSION=$(srcdir)/build/lib/libascension.a |
98
83bec26453a8
add deploy target for the demo program
Mike Becker <universe@uap-core.de>
parents:
95
diff
changeset
|
30 | CFLAGS += -I$(srcdir)/src $(CPPFLAGS) |
0 | 31 | |
84
e4116b4b5774
put snake test program into separate directory
Mike Becker <universe@uap-core.de>
parents:
82
diff
changeset
|
32 | all: $(BUILD_DIR) $(BUILD_DIR)/snake FORCE |
e4116b4b5774
put snake test program into separate directory
Mike Becker <universe@uap-core.de>
parents:
82
diff
changeset
|
33 | @echo "Demo game 'snake' successfully built." |
0 | 34 | |
84
e4116b4b5774
put snake test program into separate directory
Mike Becker <universe@uap-core.de>
parents:
82
diff
changeset
|
35 | $(BUILD_DIR): |
e4116b4b5774
put snake test program into separate directory
Mike Becker <universe@uap-core.de>
parents:
82
diff
changeset
|
36 | mkdir -p $@ |
0 | 37 | |
35 | 38 | $(BUILD_DIR)/snake: $(BUILD_DIR)/snake.o $(LIB_ASCENSION) |
39 | @echo "Linking snake..." | |
0 | 40 | $(CC) $(LDFLAGS) -o $@ $^ |
41 | ||
20
b101c1ef13c7
add pseudo-rule s.t. dry-runs won't fail
Mike Becker <universe@uap-core.de>
parents:
16
diff
changeset
|
42 | $(LIB_ASCENSION): |
b101c1ef13c7
add pseudo-rule s.t. dry-runs won't fail
Mike Becker <universe@uap-core.de>
parents:
16
diff
changeset
|
43 | test -f "$@" |
b101c1ef13c7
add pseudo-rule s.t. dry-runs won't fail
Mike Becker <universe@uap-core.de>
parents:
16
diff
changeset
|
44 | |
6
302971e8599b
move window related stuff to its own unit
Mike Becker <universe@uap-core.de>
parents:
0
diff
changeset
|
45 | FORCE: |
302971e8599b
move window related stuff to its own unit
Mike Becker <universe@uap-core.de>
parents:
0
diff
changeset
|
46 | |
86
943bf9d7c6d6
make asset paths configurable
Mike Becker <universe@uap-core.de>
parents:
84
diff
changeset
|
47 | $(BUILD_DIR)/snake.o: snake.c ../../src/ascension/core.h \ |
106
895f92cff6b8
bring back error.h to reduce compile dependencies
Mike Becker <universe@uap-core.de>
parents:
98
diff
changeset
|
48 | ../../src/ascension/error.h ../../src/ascension/context.h \ |
895f92cff6b8
bring back error.h to reduce compile dependencies
Mike Becker <universe@uap-core.de>
parents:
98
diff
changeset
|
49 | ../../src/ascension/datatypes.h ../../src/ascension/window.h \ |
139
5d655459db85
refactor shader management - resolves #684
Mike Becker <universe@uap-core.de>
parents:
137
diff
changeset
|
50 | ../../src/ascension/glcontext.h ../../src/ascension/scene.h \ |
5d655459db85
refactor shader management - resolves #684
Mike Becker <universe@uap-core.de>
parents:
137
diff
changeset
|
51 | ../../src/ascension/scene_node.h ../../src/ascension/transform.h \ |
106
895f92cff6b8
bring back error.h to reduce compile dependencies
Mike Becker <universe@uap-core.de>
parents:
98
diff
changeset
|
52 | ../../src/ascension/camera.h ../../src/ascension/input.h \ |
108
d619bf7dd87b
add AscBehavior - prepares resolution of issue #646
Mike Becker <universe@uap-core.de>
parents:
106
diff
changeset
|
53 | ../../src/ascension/ui/font.h ../../src/ascension/behavior.h \ |
d619bf7dd87b
add AscBehavior - prepares resolution of issue #646
Mike Becker <universe@uap-core.de>
parents:
106
diff
changeset
|
54 | ../../src/ascension/ui.h ../../src/ascension/ui/text.h \ |
143
4db4f00493ad
prepare implementation of primitives
Mike Becker <universe@uap-core.de>
parents:
139
diff
changeset
|
55 | ../../src/ascension/ui/font.h ../../src/ascension/ui/../sprite.h \ |
4db4f00493ad
prepare implementation of primitives
Mike Becker <universe@uap-core.de>
parents:
139
diff
changeset
|
56 | ../../src/ascension/ui/../scene_node.h ../../src/ascension/ui/../mesh.h \ |
4db4f00493ad
prepare implementation of primitives
Mike Becker <universe@uap-core.de>
parents:
139
diff
changeset
|
57 | ../../src/ascension/ui/../datatypes.h \ |
144
43636d6a6e25
do not try to use one distinct render group for each different shader
Mike Becker <universe@uap-core.de>
parents:
143
diff
changeset
|
58 | ../../src/ascension/ui/../texture.h ../../src/ascension/ui/../camera.h \ |
151
42960d0c879b
adds first basic rectangle shader
Mike Becker <universe@uap-core.de>
parents:
144
diff
changeset
|
59 | ../../src/ascension/sprite.h ../../src/ascension/2d.h \ |
42960d0c879b
adds first basic rectangle shader
Mike Becker <universe@uap-core.de>
parents:
144
diff
changeset
|
60 | ../../src/ascension/mesh.h |
6
302971e8599b
move window related stuff to its own unit
Mike Becker <universe@uap-core.de>
parents:
0
diff
changeset
|
61 | @echo "Compiling $<" |
0 | 62 | $(CC) -o $@ $(CFLAGS) -c $< |
63 |