WebGLを勉強するため、古い本になりますが、以下の本を用いてWebGLの勉強をしております。
『WebGL+HTML5 3DCGプログラミング入門』2012年出版
この本は紙面を節約するため、追記しているにも関わらず、記述していない箇所が多いため、常にサンプルプログラムと見比べて作業を進めております。しかし、書籍に付属してあるサンプルプログラムの5章で動かない不具合が多々ありました。エラー内容を確認しますと、シェーダの初期化に失敗しているとあったので、出版元のホームページで正誤表を確認したのですが、該当する箇所での修正、訂正はありませんでした。どのように対処すれば、サンプルが正しく動作するでしょうか?
心当たりあることがありましたら、何卒、ご助言のほどよろしくお願いいたします。
JavaScript
1var VSHADER_SOURCE = 2 'attribute vec4 a_Position;\n' + 3 'attribute vec4 a_Color;\n' + 4 'varying vec4 v_Color;\n' + 5 'void main() {\n' + 6 ' gl_Position = a_Position;\n' + 7 ' gl_PointSize = 10.0;\n' + 8 ' v_Color = a_Color;\n' + 9 '}\n'; 10 11// フラグメントシェーダのプログラム 12var FSHADER_SOURCE = 13 'varying vec4 v_Color;\n' + 14 'void main() {\n' + 15 ' gl_FragColor = v_Color;\n' + 16 '}\n'; 17 18function main() { 19 // Canvas要素を取得する 20 var canvas = document.getElementById('webgl'); 21 22 // WebGL描画用のコンテキストを取得する 23 var gl = getWebGLContext(canvas); 24 if (!gl) { 25 console.log('WebGLコンテキストの取得に失敗'); 26 return; 27 } 28 29 // シェーダを初期化する 30 if (!initShaders(gl, VSHADER_SOURCE, FSHADER_SOURCE)) { 31 console.log('シェーダの初期化に失敗'); 32 return; 33 } 34 35以下略
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/07/12 15:49
2017/07/12 21:36
2017/07/13 05:36
2017/07/14 11:35