我有一台只支持OpenGL 2.1的工作笔记本电脑,我家里有OpenGL 4.4.我在桌面上正在开发一个项目.所以我使我的程序与Modern OpenGL兼容.但我想在我的工作笔记本电脑中开发这个项目.我的问题是,我可以使这个项目兼容Legacy和Modern OpenGL吗?
像这样.
#ifdef MODERN_OPENGL
some code..
glBegin(GL_TRIANGLES);
...
glEnd();
#else
glGenBuffers(&vbo);
...
#endif
Run Code Online (Sandbox Code Playgroud) 我正在制作一个网站Socket.io。但是emit方法在我的代码中不起作用。我在我的代码中看不到任何错误。这是我的服务器代码。
var io = require("socket.io").listen(server);
//Some external codes for running server in Node.js
io.on("connection", function(socket) {
//This line is working.
console.log("Socket connected.");
io.on("requestNewMap", function(data) {
//Create new map object in here.
io.emit("responseNewMap", { mapData: map });
});
});
Run Code Online (Sandbox Code Playgroud)
这是我的客户端javascript代码。
var socket = io();
socket.on("responseNewMap", function(data) {
var map = data.mapData;
//Draw map in canvas's context.
});
//setInterval runs this method every 2 seconds.
function requestNewMap() {
socket.emit("requestNewMap");
}
Run Code Online (Sandbox Code Playgroud) 我有需要的方法voxContext*和回调glfwSetMouseButtonCallback。我的回调函数是void(*inputFunc)(voxContext* ctx, GLFWwindow* window, int button, int action, int mods). 我不能在glfwSetMouseButtonCallback. 我可以更改参数顺序吗?