Mercurial > games > semicongine
annotate src/semicongine/vulkan/utils.nim @ 103:1e2027dfc642
add: finally working initial approach for shader definitions
author | Sam <sam@basx.dev> |
---|---|
date | Mon, 20 Mar 2023 10:25:50 +0700 |
parents | e872cf354110 |
children | 2d0351a68a4e |
rev | line source |
---|---|
89 | 1 import std/strutils |
103
1e2027dfc642
add: finally working initial approach for shader definitions
Sam <sam@basx.dev>
parents:
92
diff
changeset
|
2 import std/os |
1e2027dfc642
add: finally working initial approach for shader definitions
Sam <sam@basx.dev>
parents:
92
diff
changeset
|
3 import std/strformat |
89 | 4 |
5 func cleanString*(str: openArray[char]): string = | |
6 for i in 0 ..< len(str): | |
7 if str[i] == char(0): | |
8 result = join(str[0 ..< i]) | |
9 break | |
10 | |
92
e872cf354110
add: more stuff for the vulkan API wrappers
Sam <sam@basx.dev>
parents:
89
diff
changeset
|
11 func toCPointer*[T](list: var seq[T]): ptr T = |
e872cf354110
add: more stuff for the vulkan API wrappers
Sam <sam@basx.dev>
parents:
89
diff
changeset
|
12 if list.len > 0: addr list[0] else: nil |
103
1e2027dfc642
add: finally working initial approach for shader definitions
Sam <sam@basx.dev>
parents:
92
diff
changeset
|
13 |
1e2027dfc642
add: finally working initial approach for shader definitions
Sam <sam@basx.dev>
parents:
92
diff
changeset
|
14 proc staticExecChecked*(command: string, input = ""): string {.compileTime.} = |
1e2027dfc642
add: finally working initial approach for shader definitions
Sam <sam@basx.dev>
parents:
92
diff
changeset
|
15 let (output, exitcode) = gorgeEx( |
1e2027dfc642
add: finally working initial approach for shader definitions
Sam <sam@basx.dev>
parents:
92
diff
changeset
|
16 command = command, |
1e2027dfc642
add: finally working initial approach for shader definitions
Sam <sam@basx.dev>
parents:
92
diff
changeset
|
17 input = input) |
1e2027dfc642
add: finally working initial approach for shader definitions
Sam <sam@basx.dev>
parents:
92
diff
changeset
|
18 if exitcode != 0: |
1e2027dfc642
add: finally working initial approach for shader definitions
Sam <sam@basx.dev>
parents:
92
diff
changeset
|
19 raise newException(Exception, &"Running '{command}' produced exit code: {exitcode}" & output) |
1e2027dfc642
add: finally working initial approach for shader definitions
Sam <sam@basx.dev>
parents:
92
diff
changeset
|
20 return output |
1e2027dfc642
add: finally working initial approach for shader definitions
Sam <sam@basx.dev>
parents:
92
diff
changeset
|
21 |
1e2027dfc642
add: finally working initial approach for shader definitions
Sam <sam@basx.dev>
parents:
92
diff
changeset
|
22 |