Skip to content

Commit d562540

Browse files
authored
Merge pull request #4 from yukiny0811/fix/ios-example
fix ios example & update readme
2 parents 093bdf6 + 6a7fcbd commit d562540

File tree

2 files changed

+17
-4
lines changed

2 files changed

+17
-4
lines changed

Examples/ExampleiOS/ExampleiOS/Logic/MyRenderer.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ class MyRenderer: ShaderRenderer {
2727
override func draw(view: MTKView, drawable: CAMetalDrawable) {
2828
let dispatch = EMMetalDispatch()
2929
dispatch.compute { [self] encoder in
30-
compute.tex = EMMetalTexture(texture: drawable.texture)
30+
compute.tex = drawable.texture.emTexture
3131
compute.intensity = abs(sin(Float(Date().timeIntervalSince(date)))) * 100
3232
compute.dispatch(encoder, textureSizeReference: drawable.texture)
3333
}

README.md

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ class MyRenderer: ShaderRenderer {
135135
override func draw(view: MTKView, drawable: CAMetalDrawable) {
136136
let dispatch = EMMetalDispatch()
137137
dispatch.compute { [self] encoder in
138-
compute.tex = EMMetalTexture(texture: drawable.texture)
138+
compute.tex = drawable.texture.emTexture
139139
compute.col = abs(sin(Float(Date().timeIntervalSince(date)))) * 0.9
140140
compute.dispatch(encoder, textureSizeReference: drawable.texture)
141141
}
@@ -172,7 +172,7 @@ You can manually dispatch compute or render functions outside of MTKView.
172172
let tex = EMMetalTexture.create(width: 100, height: 100, pixelFormat: .bgra8Unorm, label: "tex", usage: .read_write)
173173
let dispatch = EMMetalDispatch()
174174
dispatch.compute { encoder in
175-
compute.tex = EMMetalTexture(texture: tex)
175+
compute.tex = tex.emTexture
176176
compute.col = 0.5
177177
compute.dispatch(encoder, textureSizeReference: tex)
178178
}
@@ -205,6 +205,19 @@ dispatch.custom { commandBuffer in
205205
dispatch.commit()
206206
```
207207

208+
### Custom Metal Functions
209+
210+
override customMetalCode property to add your original metal codes.
211+
212+
```.swift
213+
@ShaderStringBuilder
214+
override var customMetalCode: String {
215+
"inline float myFunc() {"
216+
"return 1.0;"
217+
"}"
218+
}
219+
```
220+
208221
## Sample Code
209222

210223

@@ -263,7 +276,7 @@ class MyRenderer: ShaderRenderer {
263276
override func draw(view: MTKView, drawable: CAMetalDrawable) {
264277
let dispatch = EMMetalDispatch()
265278
dispatch.compute { [self] encoder in
266-
compute.tex = EMMetalTexture(texture: drawable.texture)
279+
compute.tex = drawable.texture.emTexture
267280
compute.intensity = abs(sin(Float(Date().timeIntervalSince(date)))) * 100
268281
compute.dispatch(encoder, textureSizeReference: drawable.texture)
269282
}

0 commit comments

Comments
 (0)