19 hours ago
On 16.05.2025 14:16, drug007 wrote:
> On 16.05.2025 13:29, Danny Arends wrote:
>> On Friday, 16 May 2025 at 09:53:06 UTC, drug007 wrote:
>>> [...]
>>
>> Should be solved in commit: 86259698fd24be5f2fbad5fbcfe9ae4d1f416f01
>>
>> Thanks for trying it, and reporting this.
>> Let me know if it works now :)
> 
> Thank you! The problem is fixed. Now I need to install other dependencies, I'll do it later

I installed the dependencies, now I got the fowllowing error
```bash
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

Thread 1 "DImGui" hit Breakpoint 1, _D7lsystem13createLSystemFZSQBa7LSystem (test=0x7fffffffd900) at src/math/lsystem.d:94
94        test.rules[Symbols.Origin] ~= Rule("W.O", 5);
(gdb) p test.rules
$1 = {ptr = 0x0}
(gdb)
```
is it okay for AA to be null here? Does runtime initialize it here properly?

P.S. also there is a bug if the box has no vulkan extensions at all the program will crush at src/engine/extensions.d:15
17 hours ago
On Friday, 16 May 2025 at 18:40:46 UTC, drug007 wrote:
> On 16.05.2025 14:16, drug007 wrote:
>> On 16.05.2025 13:29, Danny Arends wrote:
>>> On Friday, 16 May 2025 at 09:53:06 UTC, drug007 wrote:
>>>> [...]
>>>
>>> Should be solved in commit: 86259698fd24be5f2fbad5fbcfe9ae4d1f416f01
>>>
>>> Thanks for trying it, and reporting this.
>>> Let me know if it works now :)
>> 
>> Thank you! The problem is fixed. Now I need to install other dependencies, I'll do it later
>
> I installed the dependencies, now I got the fowllowing error
> ```bash
> 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
>
> Thread 1 "DImGui" hit Breakpoint 1, _D7lsystem13createLSystemFZSQBa7LSystem (test=0x7fffffffd900) at src/math/lsystem.d:94
> 94        test.rules[Symbols.Origin] ~= Rule("W.O", 5);
> (gdb) p test.rules
> $1 = {ptr = 0x0}
> (gdb)
> ```
> is it okay for AA to be null here? Does runtime initialize it here properly?
>
> P.S. also there is a bug if the box has no vulkan extensions at all the program will crush at src/engine/extensions.d:15


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?

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.

16 hours ago
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@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.
> 

16 hours ago
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@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.


7 hours ago
On 17.05.2025 01:26, Danny Arends wrote:
> 
> 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.
> 
> 
This patch fixed the issue:
```bash
root@1be5cfa937c3:/DImGui#  git diff
diff --git a/src/math/lsystem.d b/src/math/lsystem.d
index 394e902..02c085d 100644
--- a/src/math/lsystem.d
+++ b/src/math/lsystem.d
@@ -91,7 +91,7 @@ struct LSystem {

 LSystem createLSystem() {
   auto test = LSystem([Symbols.Origin]);
-  test.rules[Symbols.Origin] ~= Rule("W.O", 5);
+  test.rules[Symbols.Origin] = Rules([Rule("W.O", 5)]);
   test.rules[Symbols.Origin] ~= Rule("S.O", 5);
   test.rules[Symbols.Origin] ~= Rule("A.O", 5);
   test.rules[Symbols.Origin] ~= Rule("D.O", 5);
```
The demo compiles and works!
6 hours ago
On Saturday, 17 May 2025 at 07:20:06 UTC, drug007 wrote:
> On 17.05.2025 01:26, Danny Arends wrote:
>> [...]
> This patch fixed the issue:
> ```bash
> root@1be5cfa937c3:/DImGui#  git diff
> diff --git a/src/math/lsystem.d b/src/math/lsystem.d
> index 394e902..02c085d 100644
> --- a/src/math/lsystem.d
> +++ b/src/math/lsystem.d
> @@ -91,7 +91,7 @@ struct LSystem {
>
>  LSystem createLSystem() {
>    auto test = LSystem([Symbols.Origin]);
> -  test.rules[Symbols.Origin] ~= Rule("W.O", 5);
> +  test.rules[Symbols.Origin] = Rules([Rule("W.O", 5)]);
>    test.rules[Symbols.Origin] ~= Rule("S.O", 5);
>    test.rules[Symbols.Origin] ~= Rule("A.O", 5);
>    test.rules[Symbols.Origin] ~= Rule("D.O", 5);
> ```
> The demo compiles and works!

Merged, and thanks again for taking the time to test it.

Any comments/steps that you needed to take that were unclear in the readme ?
1 2
Next ›   Last »