私はwebGLを初めて使っていて、JavaScriptを使ってキャンバスに1つのシンプルな正方形のボックスを表示しようとしました。私はデバッグする方法を知らない。誰かが私を助けることができれば素晴らしいだろう。ありがとう!webgl - 最初の小さな正方形のボックスを作成しようとしています
var gl,
shaderProgram;
initGL();
createShaders();
draw();
function initGL() {
let canvas = document.getElementById("canvas");
gl = canvas.getContext("webgl");
gl.viewport(0.0, 0.0, canvas.width, canvas.height);
gl.clearColor(0.0, 1.0, 1.0, 1.0); // colors for r, g, b and alpha. these are all normalized values from 0 to 1.
}
function createShaders(){
var vs="";
vs+="void main(void) {";
vs+=" gl_Position = vec4(0.0, 0.0, 0.0, 1.0)";
vs+=" gl_PointSize = 10.0;";
vs+="}";
var vertexShader = gl.createShader(gl.VERTEX_SHADER);
gl.shaderSource(vertexShader, vs);
gl.compileShader(vertexShader);
var fs="";
fs+="void main(void) {";
fs+=" gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0)"; // Fully opaque black
fs+="}";
var fragmentShader = gl.createShader(gl.FRAGMENT_SHADER);
gl.shaderSource(fragmentShader, fs);
gl.compileShader(fragmentShader);
shaderProgram = gl.createProgram();
gl.attachShader(shaderProgram, vertexShader);
gl.attachShader(shaderProgram, fragmentShader);
gl.linkProgram(shaderProgram);
gl.useProgram(shaderProgram);
}
function draw(){
gl.clear(gl.COLOR_BUFFER_BIT);
gl.drawArrays(gl.POINTS, 0, 1);
}
<canvas id="canvas" width="600" height="600"> </canvas>
なぜあなたは最初の概念を理解するためにthree.js' 'で始まりません。 – pirs
@pirsに感謝しますが、多くのエンジニアとの話し合いに基づいて、図書館の素朴さを理解し、構造物を造ることが正確に私を鍛えてくれるので、私のThree.jsエラーでは、私はこの初期の痛みは避けられないと思います:) – novembersky
[** MDN docs **](https://developer.mozilla.org/en-US/docs/Web/API/WebGL_API/Tutorial/Creating_3D_objects_using_WebGL) – codtex