Enviar búsqueda
Cargar
Cocos2d Shaders
•
Descargar como KEY, PDF
•
7 recomendaciones
•
2,581 vistas
Yuichi Higuchi
Seguir
How to use original shaders on cocos2d.
Leer menos
Leer más
Tecnología
Denunciar
Compartir
Denunciar
Compartir
1 de 21
Descargar ahora
Recomendados
【TechBuzz】第9回cocos2d-x勉強会「シェーダ書いてますか?」
【TechBuzz】第9回cocos2d-x勉強会「シェーダ書いてますか?」
nyagasuki
シェーダーしよっ☆ Let's play shaders!
シェーダーしよっ☆ Let's play shaders!
Yuichi Higuchi
簡単!OpenGL ES 2.0フラグメントシェーダー
簡単!OpenGL ES 2.0フラグメントシェーダー
Eiji Kamiya
GLSLによるシェーダーアートことはじめ
GLSLによるシェーダーアートことはじめ
Yoichi Hirata
Core Graphicsでつくる自作UIコンポーネント入門
Core Graphicsでつくる自作UIコンポーネント入門
cocopon
Sencha study
Sencha study
Shinsuke Sugita
FiltersでGLSLを楽しく学んじゃおう!
FiltersでGLSLを楽しく学んじゃおう!
Kazuya Hiruma
Dsl&Builder
Dsl&Builder
Uehara Junji
Recomendados
【TechBuzz】第9回cocos2d-x勉強会「シェーダ書いてますか?」
【TechBuzz】第9回cocos2d-x勉強会「シェーダ書いてますか?」
nyagasuki
シェーダーしよっ☆ Let's play shaders!
シェーダーしよっ☆ Let's play shaders!
Yuichi Higuchi
簡単!OpenGL ES 2.0フラグメントシェーダー
簡単!OpenGL ES 2.0フラグメントシェーダー
Eiji Kamiya
GLSLによるシェーダーアートことはじめ
GLSLによるシェーダーアートことはじめ
Yoichi Hirata
Core Graphicsでつくる自作UIコンポーネント入門
Core Graphicsでつくる自作UIコンポーネント入門
cocopon
Sencha study
Sencha study
Shinsuke Sugita
FiltersでGLSLを楽しく学んじゃおう!
FiltersでGLSLを楽しく学んじゃおう!
Kazuya Hiruma
Dsl&Builder
Dsl&Builder
Uehara Junji
怪しいWindowsプログラミング
怪しいWindowsプログラミング
nagoya313
Algorithm 速いアルゴリズムを書くための基礎
Algorithm 速いアルゴリズムを書くための基礎
Kenji Otsuka
WebGL and Three.js
WebGL and Three.js
yomotsu
初めてのグラフカット
初めてのグラフカット
Tsubasa Hirakawa
Cocos2dshader devcon jp_20120621_en
Cocos2dshader devcon jp_20120621_en
Ricardo Quesada
Inside frogc in Dart
Inside frogc in Dart
Goro Fuji
Webデザイン 第10回:HTML5実践 Three.jsで3Dプログラミング
Webデザイン 第10回:HTML5実践 Three.jsで3Dプログラミング
Atsushi Tadokoro
iOSプログラマへ。HTML5 Canvasがおもしろい!
iOSプログラマへ。HTML5 Canvasがおもしろい!
cocopon
ノンプログラマーでも明日から使えるJavaScript簡単プログラム 先生:柳井 政和
ノンプログラマーでも明日から使えるJavaScript簡単プログラム 先生:柳井 政和
schoowebcampus
Lotus DEvCon 2000 - LotusScript Tips and Techniques
Lotus DEvCon 2000 - LotusScript Tips and Techniques
Hiroaki Komine
ADVENTURE_Solid Ver.1.2の概要
ADVENTURE_Solid Ver.1.2の概要
ADVENTURE Project
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
Kiyoshi Sawada
GoCon 2015 Summer GoのASTをいじくって新しいツールを作る
GoCon 2015 Summer GoのASTをいじくって新しいツールを作る
Masahiro Wakame
GPUが100倍速いという神話をぶち殺せたらいいな ver.2013
GPUが100倍速いという神話をぶち殺せたらいいな ver.2013
Ryo Sakamoto
3次元図形をSchemeで造ろう!
3次元図形をSchemeで造ろう!
vi-iv
Cocoa勉強会201208
Cocoa勉強会201208
Satoshi Oomori
新しい並列for構文のご提案
新しい並列for構文のご提案
yohhoy
きつねさんでもわかるLlvm読書会 第2回
きつねさんでもわかるLlvm読書会 第2回
Tomoya Kawanishi
Three.jsで3D気分
Three.jsで3D気分
Toshio Ehara
規格書で読むC++11のスレッド
規格書で読むC++11のスレッド
Kohsuke Yuasa
3DCG(3Dコンピュータグラフィック)をWebGLで始めよう
3DCG(3Dコンピュータグラフィック)をWebGLで始めよう
AdvancedTechNight
はじめてのぽりごん
はじめてのぽりごん
naohito maeda
Más contenido relacionado
La actualidad más candente
怪しいWindowsプログラミング
怪しいWindowsプログラミング
nagoya313
Algorithm 速いアルゴリズムを書くための基礎
Algorithm 速いアルゴリズムを書くための基礎
Kenji Otsuka
WebGL and Three.js
WebGL and Three.js
yomotsu
初めてのグラフカット
初めてのグラフカット
Tsubasa Hirakawa
Cocos2dshader devcon jp_20120621_en
Cocos2dshader devcon jp_20120621_en
Ricardo Quesada
Inside frogc in Dart
Inside frogc in Dart
Goro Fuji
Webデザイン 第10回:HTML5実践 Three.jsで3Dプログラミング
Webデザイン 第10回:HTML5実践 Three.jsで3Dプログラミング
Atsushi Tadokoro
iOSプログラマへ。HTML5 Canvasがおもしろい!
iOSプログラマへ。HTML5 Canvasがおもしろい!
cocopon
ノンプログラマーでも明日から使えるJavaScript簡単プログラム 先生:柳井 政和
ノンプログラマーでも明日から使えるJavaScript簡単プログラム 先生:柳井 政和
schoowebcampus
Lotus DEvCon 2000 - LotusScript Tips and Techniques
Lotus DEvCon 2000 - LotusScript Tips and Techniques
Hiroaki Komine
ADVENTURE_Solid Ver.1.2の概要
ADVENTURE_Solid Ver.1.2の概要
ADVENTURE Project
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
Kiyoshi Sawada
GoCon 2015 Summer GoのASTをいじくって新しいツールを作る
GoCon 2015 Summer GoのASTをいじくって新しいツールを作る
Masahiro Wakame
GPUが100倍速いという神話をぶち殺せたらいいな ver.2013
GPUが100倍速いという神話をぶち殺せたらいいな ver.2013
Ryo Sakamoto
3次元図形をSchemeで造ろう!
3次元図形をSchemeで造ろう!
vi-iv
Cocoa勉強会201208
Cocoa勉強会201208
Satoshi Oomori
新しい並列for構文のご提案
新しい並列for構文のご提案
yohhoy
きつねさんでもわかるLlvm読書会 第2回
きつねさんでもわかるLlvm読書会 第2回
Tomoya Kawanishi
Three.jsで3D気分
Three.jsで3D気分
Toshio Ehara
規格書で読むC++11のスレッド
規格書で読むC++11のスレッド
Kohsuke Yuasa
La actualidad más candente
(20)
怪しいWindowsプログラミング
怪しいWindowsプログラミング
Algorithm 速いアルゴリズムを書くための基礎
Algorithm 速いアルゴリズムを書くための基礎
WebGL and Three.js
WebGL and Three.js
初めてのグラフカット
初めてのグラフカット
Cocos2dshader devcon jp_20120621_en
Cocos2dshader devcon jp_20120621_en
Inside frogc in Dart
Inside frogc in Dart
Webデザイン 第10回:HTML5実践 Three.jsで3Dプログラミング
Webデザイン 第10回:HTML5実践 Three.jsで3Dプログラミング
iOSプログラマへ。HTML5 Canvasがおもしろい!
iOSプログラマへ。HTML5 Canvasがおもしろい!
ノンプログラマーでも明日から使えるJavaScript簡単プログラム 先生:柳井 政和
ノンプログラマーでも明日から使えるJavaScript簡単プログラム 先生:柳井 政和
Lotus DEvCon 2000 - LotusScript Tips and Techniques
Lotus DEvCon 2000 - LotusScript Tips and Techniques
ADVENTURE_Solid Ver.1.2の概要
ADVENTURE_Solid Ver.1.2の概要
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
GoCon 2015 Summer GoのASTをいじくって新しいツールを作る
GoCon 2015 Summer GoのASTをいじくって新しいツールを作る
GPUが100倍速いという神話をぶち殺せたらいいな ver.2013
GPUが100倍速いという神話をぶち殺せたらいいな ver.2013
3次元図形をSchemeで造ろう!
3次元図形をSchemeで造ろう!
Cocoa勉強会201208
Cocoa勉強会201208
新しい並列for構文のご提案
新しい並列for構文のご提案
きつねさんでもわかるLlvm読書会 第2回
きつねさんでもわかるLlvm読書会 第2回
Three.jsで3D気分
Three.jsで3D気分
規格書で読むC++11のスレッド
規格書で読むC++11のスレッド
Similar a Cocos2d Shaders
3DCG(3Dコンピュータグラフィック)をWebGLで始めよう
3DCG(3Dコンピュータグラフィック)をWebGLで始めよう
AdvancedTechNight
はじめてのぽりごん
はじめてのぽりごん
naohito maeda
emc++ chapter32
emc++ chapter32
Tatsuki SHIMIZU
cocos2d-xとネイティブ間の連携
cocos2d-xとネイティブ間の連携
Tomoaki Shimizu
㉞cocos2d-xの開発環境をインストールしてみよう
㉞cocos2d-xの開発環境をインストールしてみよう
Nishida Kansuke
3D で遊ぼう ~C#er も TypeScript で楽々 WebGL~
3D で遊ぼう ~C#er も TypeScript で楽々 WebGL~
Fujio Kojima
Cocos2d x-sprite3d
Cocos2d x-sprite3d
aktsk
SpringMVCとmixer2で作るWebアプリのキホン 2013-01-24 Spring勉強会 #jsug
SpringMVCとmixer2で作るWebアプリのキホン 2013-01-24 Spring勉強会 #jsug
Y Watanabe
OpenGLプログラミング
OpenGLプログラミング
幸雄 村上
Grails 2.0.0.M1の話
Grails 2.0.0.M1の話
Tsuyoshi Yamamoto
Google Cloud Messaging for Android ことはじめ(サンプルコードを動かしてみる編)
Google Cloud Messaging for Android ことはじめ(サンプルコードを動かしてみる編)
kojiokb
Cocos2d xをさらにさわってみよう!
Cocos2d xをさらにさわってみよう!
Tomoaki Shimizu
Pivotal認定講師によるSpring Framework 5.1 & Spring Boot 2.1ハンズオン! #jjug_ccc
Pivotal認定講師によるSpring Framework 5.1 & Spring Boot 2.1ハンズオン! #jjug_ccc
Masatoshi Tada
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
Kiyoshi Sawada
社内勉強会資料(Varnish Module)
社内勉強会資料(Varnish Module)
Iwana Chan
OpenCVの入り口
OpenCVの入り口
cct-inc
Introduce build in shrinker
Introduce build in shrinker
Daisuke Fuji
cocos2d-x公開講座 in 鹿児島
cocos2d-x公開講座 in 鹿児島
Tomoaki Shimizu
Hello, DirectCompute
Hello, DirectCompute
dasyprocta
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
Kiyoshi Sawada
Similar a Cocos2d Shaders
(20)
3DCG(3Dコンピュータグラフィック)をWebGLで始めよう
3DCG(3Dコンピュータグラフィック)をWebGLで始めよう
はじめてのぽりごん
はじめてのぽりごん
emc++ chapter32
emc++ chapter32
cocos2d-xとネイティブ間の連携
cocos2d-xとネイティブ間の連携
㉞cocos2d-xの開発環境をインストールしてみよう
㉞cocos2d-xの開発環境をインストールしてみよう
3D で遊ぼう ~C#er も TypeScript で楽々 WebGL~
3D で遊ぼう ~C#er も TypeScript で楽々 WebGL~
Cocos2d x-sprite3d
Cocos2d x-sprite3d
SpringMVCとmixer2で作るWebアプリのキホン 2013-01-24 Spring勉強会 #jsug
SpringMVCとmixer2で作るWebアプリのキホン 2013-01-24 Spring勉強会 #jsug
OpenGLプログラミング
OpenGLプログラミング
Grails 2.0.0.M1の話
Grails 2.0.0.M1の話
Google Cloud Messaging for Android ことはじめ(サンプルコードを動かしてみる編)
Google Cloud Messaging for Android ことはじめ(サンプルコードを動かしてみる編)
Cocos2d xをさらにさわってみよう!
Cocos2d xをさらにさわってみよう!
Pivotal認定講師によるSpring Framework 5.1 & Spring Boot 2.1ハンズオン! #jjug_ccc
Pivotal認定講師によるSpring Framework 5.1 & Spring Boot 2.1ハンズオン! #jjug_ccc
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
社内勉強会資料(Varnish Module)
社内勉強会資料(Varnish Module)
OpenCVの入り口
OpenCVの入り口
Introduce build in shrinker
Introduce build in shrinker
cocos2d-x公開講座 in 鹿児島
cocos2d-x公開講座 in 鹿児島
Hello, DirectCompute
Hello, DirectCompute
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
Último
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
Toru Tamaki
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Toru Tamaki
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Yuma Ohgami
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
danielhu54
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
iPride Co., Ltd.
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
taisei2219
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
Toru Tamaki
Último
(9)
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
Cocos2d Shaders
1.
cocos2dでシェーダーを使おう
cocos2d v2.0-rc1
2.
自己紹介
FREE! • xionchannel • @ajinotataki • Technical Artist ElectroMaster HungryMaster 18万本 5万本
3.
シェーダーとは • GPU用の色をつけるプログラム • VertexShaderとFragmentShaderがある •
OpenGLではGLSL言語を使う • シェーダーに与える引数もある Attribute, Uniform
4.
OpenGL ES 2.0
での流れ glCreateShader() glShaderSource() glCreateProgram() glCompileShader() glAttachShader() glLinkProgram() 破棄してOK あとで使う glUseProgram()
5.
1. VertexShader, FragmentShaderのシェーダーオブ
ジェクトを作成 glCreateShader() 2. シェーダーオブジェクトにプログラムを読み 込む glShaderSource() 3. プログラムをコンパイル glCompileShader()
6.
4. プログラムオブジェクトを作成 glCreateProgram() 5.
プログラムオブジェクトにシェーダーを登録 glAttachShader() ※ここでシェーダーオブジェクトは破棄して良い 6. シェーダープログラムをリンク glLinkProgram() ※ここまで事前処理で良い 7. シェーダープログラムを適用 glUseProgram()
7.
cocos2dではどういう 流れになっているか
8.
cocos2d 2.0 での流れ self.shaderProgram
= [[CCShaderCache sharedShaderCache] programForKey:kCCShader_PositionTextureColor]; glCreateShader() glShaderSource() glCreateProgram() glCompileShader() glAttachShader() glLinkProgram() 破棄 初期化メソッド CC_NODE_DRAW_SETUP(); glUseProgram() drawメソッド
9.
初期化メソッドの流れ self.shaderProgram = [[CCShaderCache
sharedShaderCache] programForKey:kCCShader_PositionTextureColor]; [CCShaderCache sharedShaderCache] [[CCShaderCache alloc] init]; [self loadDefaultShaders]; [[CCGLProgram alloc] initWithVertexShaderByteArray:fragmentShaderByteArray:]; glCreateShader() glCreateProgram() glShaderSource() glAttachShader() glCompileShader() Attribute, Uniformの準備 glLinkProgram() 破棄
10.
初期化メソッドの流れ 1. [CCShaderCache sharedShaderCache]が呼ばれる 2.
その中で[[CCShaderCache alloc] init];が呼ばれる 3. その中で[self loadDefaultShaders];が呼ばれる 4. その中で[[CCGLProgram alloc] initWithVertexShaderByteArray: fragmentShaderByteArray: ];が呼ばれシェーダーが コンパイルされ、配列に保持
11.
5. さらにシェーダーのAttribute, Uniform指定用の
識別子を準備 (updateUniformsメソッド) 6. シェーダーをリンクし、4で生成されたプログ ラムは破棄 7. 4で保持されたシェーダーをCCNodeで使用する ために識別子がCCNode側のself.shaderProgram を渡す
12.
drawメソッドの流れ CC_NODE_DRAW_SETUP();
glUseProgram() glUniform*() 動的Uniformを更新 glBindTexture2d() 使用するテクスチャを指定 glVertexAttribPointer() Attributeメモリ座標を指定 glDrawArrays() ポリゴン描画
13.
drawメソッドの流れ 1. CC_NODE_DRAW_SETUP()マクロ内で glUseProgram()を実行、シェーダーが使用可能に
なる 2. 動的Uniformパラメータを更新 3. 使用テクスチャをBind 4. Attributeパラメータのメモリ座標をセット 5. ポリゴンを描画
14.
Attribute, Uniform • AttributeはVertexShader用パラメータ
★ 頂点数分のデータが必要 (頂点座標、法線、頂点カラーなど) • Uniformは双方へのパラメータ ★ ピクセル分のデータではない ★ 全ピクセルに対して同じデータ (テクスチャ、演算用の値など)
15.
cocos2dでオリジナル シェーダーを使うには?
16.
初期化メソッドを変更 self.shaderProgram = [[CCShaderCache
sharedShaderCache] programForKey:kCCShader_PositionTextureColor]; [CCShaderCache sharedShaderCache] これを自前にして自前の [[CCShaderCache alloc] init]; シェーダーを登録する [self loadDefaultShaders]; [[CCGLProgram alloc] initWithVertexShaderByteArray:fragmentShaderByteArray:]; glCreateShader() glCreateProgram() glShaderSource() glAttachShader() glCompileShader() Attribute, Uniformの準備 glLinkProgram() 破棄
17.
drawメソッドの変更 CC_NODE_DRAW_SETUP();
glUseProgram() glUniform*() 動的Uniformを更新 glUniform*() 自前の動的Uniformを更新を追加 この辺に自 前パラメー glBindTexture2d() 使用するテクスチャを指定、自前のも追加 タを追加 glVertexAttribPointer() Attributeメモリ座標を指定、自前のも追加 glDrawArrays() ポリゴン描画
18.
というわけで 実際にやってみた
19.
法線マップを使用した 平行光源ライティングの例
20.
法線マップを使用した 点光源ライティングの例
21.
GLSLの参考資料 •
床井研究室 http://marina.sys.wakayama-u.ac.jp/~tokoi/? date=20051006 • 今回のソース http://xionchannel.no-ip.org/ cocos2d_shaderTest.zip • 今回のスライド http://xionchannel.no-ip.org/ cocos2dShader20120621.pdf
Notas del editor
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
Descargar ahora