Looking for Feedback (3D engine)

Danny Arends Danny.Arends at gmail.com
Fri May 16 22:26:13 UTC 2025


On Friday, 16 May 2025 at 21:35:04 UTC, drug007 wrote:
> On 17.05.2025 00:26, Danny Arends wrote:
>> 
>> 
>> Thanks, I'll look into that one never had issues assigning to 
>> the L-System AA array. Does it cause a crash? If so could you 
>> do a stack trace to see if it comes from D runtime or just me 
>> not initializing it?
>> 
>
> ```bash
> INFO: createScene: Add a Square
> INFO: createScene: Add a Cube
> INFO: createScene: Add an Icosahedron
> INFO: createScene: Add Text
> INFO: createScene: Add Wavefront
> INFO: createScene: Add ParticleSystem
> INFO: createScene: Add L-System
> core.exception.RangeError at src/math/lsystem.d(94): Range 
> violation
> ----------------
> ??:? onRangeError [0x57f0f10b5012]
> ??:? _d_arrayboundsp [0x57f0f109737d]
> src/math/lsystem.d:94 lsystem.LSystem lsystem.createLSystem() 
> [0x57f0f1051bfe]
> src/scene.d:95 void scene.createScene(ref engine.App) 
> [0x57f0f108bb6e]
> src/main.d:51 _Dmain [0x57f0f1051169]
> ```
>
>> About 2) No Vulkan will lead to a hard crash, when querying 
>> instance extensions due to no vulkan instance being available. 
>> It might be nicer to have a clean exit indeed.

Never seen it being a problem, but changing line 94 of lsystem.d 
from

```
   test.rules[Symbols.Origin] ~= Rule("W.O", 5);
```

To

```
   test.rules[Symbols.Origin] = Rule("W.O", 5);
```

Would fix it, I guess appending might not be allowed when the key 
doesn't exist yet.




More information about the Digitalmars-d-learn mailing list