Skip to content

Commit 73266a7

Browse files
authored
Merge branch 'master' into pathfinder_history
2 parents 8687fc6 + 865bd54 commit 73266a7

File tree

10 files changed

+7744
-7113
lines changed

10 files changed

+7744
-7113
lines changed

Makefile

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,11 @@ libopenage: $(BUILDDIR)
4545

4646
.PHONY: codegen
4747
codegen: $(BUILDDIR)
48-
$(MAKE) $(MAKEARGS) -C $(BUILDDIR) codegen
48+
$(MAKE) $(MAKEARGS) -C $(BUILDDIR) cppgen
49+
50+
.PHONY: cppgen
51+
cppgen: $(BUILDDIR)
52+
$(MAKE) $(MAKEARGS) -C $(BUILDDIR) cppgen
4953

5054
.PHONY: pxdgen
5155
pxdgen: $(BUILDDIR)

buildsystem/codegen.cmake

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright 2014-2019 the openage authors. See copying.md for legal info.
1+
# Copyright 2014-2025 the openage authors. See copying.md for legal info.
22

33
# set CODEGEN_SCU_FILE to the absolute path to SCU file
44
macro(get_codegen_scu_file)
@@ -52,7 +52,7 @@ function(codegen_run)
5252
COMMENT "openage.codegen: generating c++ code"
5353
)
5454

55-
add_custom_target(codegen
55+
add_custom_target(cppgen
5656
DEPENDS "${CODEGEN_TIMEFILE}"
5757
)
5858

doc/changelogs/nyan_api/v0.6.0.md

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
# [0.6.0] - 2025-05-18
2+
All notable changes for version [v0.6.0] are documented in this file.
3+
4+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
5+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6+
7+
## Added
8+
### Ability module
9+
- Add `Ranged(Property)` object; defines range of an ability; replaces various range members in `Ability` objects
10+
11+
### Utility module
12+
- Add `AbilityUsable(Condition)` object; checks if an ability can be used by an entity
13+
- Add `NextCommand(Condition)` object; checks if a specific command is next in the command queue; replaces individual objects checking for specific commands
14+
- Add `TargetInRange(Condition)` object; checks if the target of an entity is in range of a specific ability
15+
- Add `Task(Node)` object; execute internal task when visiting node
16+
- Add `Task(Object)` object
17+
- Add `ClearCommandQueue(Task)` object; clears the command queue when visiting task node
18+
- Add `PopCommandQueue(Task)` object; pops the front command in the command queue when visiting task node
19+
- Add `MoveToTarget(Task)` object; move to the current target of the entity when visiting task node
20+
- Add `XORSwitchGate(Node)` object; switch branches based on evaluating single value
21+
- Add `SwitchCondition(Object)` object
22+
- Add `NextCommand(SwitchCondition)` object; switch branches based on the next command in the command queue
23+
- Add `Command(Object)` object; references internal commands of the engine
24+
- Add `ApplyEffect(Command)` object
25+
- Add `Idle(Command)` object
26+
- Add `Move(Command)` object
27+
28+
### Removed
29+
### Ability module
30+
- Remove `RangedContinuousEffect(Ability)` object; functionality superceded by `Ranged(Property)` object
31+
- Remove `RangedDiscreteEffect(Ability)` object; functionality superceded by `Ranged(Property)` object
32+
- Remove `range` member from `DetectCloak(Ability)`; functionality superceded by `Ranged(Property)` object
33+
- Remove `range` member from `Herd(Ability)`; functionality superceded by `Ranged(Property)` object
34+
- Remove `min_range` member from `ShootProjectile(Ability)`; functionality superceded by `Ranged(Property)` object
35+
- Remove `max_range` member from `ShootProjectile(Ability)`; functionality superceded by `Ranged(Property)` object
36+
37+
### Utility module
38+
- Remove `NextCommandIdle(Condition)` object; functionality superceded by `NextCommand(Condition)` object
39+
- Remove `NextCommandMove(Condition)` object; functionality superceded by `NextCommand(Condition)` object
40+
41+
## Reference visualization
42+
43+
* [Gamedata](https://github.com/SFTtech/openage/blob/927f547d4985cba8e172c9492273b34537571c56/doc/nyan/aoe2_nyan_tree.svg)

doc/code/renderer/demos.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ The demo mostly follows the steps described in the [Level 1 Renderer - Basic Usa
2424
documentation.
2525

2626
```bash
27-
./bin/run test --demo renderer.tests.renderer_demo 0
27+
cd bin && ./run test --demo renderer.tests.renderer_demo 0
2828
```
2929

3030
**Result:**
@@ -38,7 +38,7 @@ This demo shows how simple *textured* meshes can be created and rendered. It als
3838
how to interact with the window and the renderer using window callbacks.
3939

4040
```bash
41-
./bin/run test --demo renderer.tests.renderer_demo 1
41+
cd bin && ./run test --demo renderer.tests.renderer_demo 1
4242
```
4343

4444
**Controls:**
@@ -56,7 +56,7 @@ In this demo, we show how animation and texture metadata files are parsed and us
5656
load and render the correct textures and animations for a mesh.
5757

5858
```bash
59-
./bin/run test --demo renderer.tests.renderer_demo 2
59+
cd bin && ./run test --demo renderer.tests.renderer_demo 2
6060
```
6161

6262
**Controls:**
@@ -76,7 +76,7 @@ This demo shows a minimal setup for the [Level 2 Renderer](level2.md) and how to
7676
with it. The demo also introduces the camera system and how to interact with it.
7777

7878
```bash
79-
./bin/run test --demo renderer.tests.renderer_demo 3
79+
cd bin && ./run test --demo renderer.tests.renderer_demo 3
8080
```
8181

8282
**Controls:**
@@ -95,7 +95,7 @@ This demos shows how animation frame timing works and how to control the animati
9595
with the engine's internal clock.
9696

9797
```bash
98-
./bin/run test --demo renderer.tests.renderer_demo 4
98+
cd bin && ./run test --demo renderer.tests.renderer_demo 4
9999
```
100100

101101
**Controls:**
@@ -115,7 +115,7 @@ This demo shows how to create [uniform buffers](level1.md#uniform-buffers) and h
115115
Additionally, uniform buffer usage for the camera system is demonstrated.
116116

117117
```bash
118-
./bin/run test --demo renderer.tests.renderer_demo 5
118+
cd bin && ./run test --demo renderer.tests.renderer_demo 5
119119
```
120120

121121
**Controls:**
@@ -132,7 +132,7 @@ Additionally, uniform buffer usage for the camera system is demonstrated.
132132
This demo shows how to use [frustum culling](level2.md#frustum-culling) in the renderer.
133133

134134
```bash
135-
./bin/run test --demo renderer.tests.renderer_demo 6
135+
cd bin && ./run test --demo renderer.tests.renderer_demo 6
136136
```
137137

138138
**Controls:**
@@ -144,12 +144,12 @@ This demo shows how to use [frustum culling](level2.md#frustum-culling) in the r
144144
![Demo 6](/doc/code/renderer/images/demo_6.png)
145145

146146

147-
### Demo 6
147+
### Demo 7
148148

149149
This demo shows how to use [shader templating](level1.md#shader-templates) in the renderer.
150150

151151
```bash
152-
./bin/run test --demo renderer.tests.renderer_demo 6
152+
cd bin && ./run test --demo renderer.tests.renderer_demo 7
153153
```
154154

155155
**Result:**
@@ -164,7 +164,7 @@ This demo shows how to use [shader templating](level1.md#shader-templates) in th
164164
This stresstest tests the performance when rendering an increasingly larger number of objects.
165165

166166
```bash
167-
./bin/run test --demo renderer.tests.stresstest 0
167+
cd bin && ./run test --demo renderer.tests.renderer_stresstest 0
168168
```
169169

170170
**Result:**
@@ -177,7 +177,7 @@ This stresstest tests the performance when [frustum culling](level2.md#frustum-c
177177
number of objects is rendered on the screen.
178178

179179
```bash
180-
./bin/run test --demo renderer.tests.stresstest 1
180+
cd bin && ./run test --demo renderer.tests.renderer_stresstest 1
181181
```
182182

183183
**Result:**

0 commit comments

Comments
 (0)