コード例 #1
0
static void initialize(GLFWwindow* window)
{
	// Hook up GLFW events
	glfwSetMouseButtonCallback(window, onMouseDown);
	glfwSetScrollCallback(window, onMouseScroll);
	glfwSetCursorPosCallback(window, onMouseMove);

	glfwSetKeyCallback(window, onKeyDown);
	glfwSetCharCallback(window, onCharCallback);

	glfwSetFramebufferSizeCallback(window, onFramebufferSizeChanged);

	// Set up framebuffer (and projection matrix)
	int width, height;
	glfwGetWindowSize(window, &width, &height);
	onFramebufferSizeChanged(window, width, height);

	// Initialize AntTweakBar
	TwInit(TW_OPENGL, NULL);
	setupAntTweakBar();

	// Init ffmpeg screen recording
	ffmpegSetScreenSize(SCREEN_WIDTH, SCREEN_HEIGHT);
	ffmpegSetOutput("output.mp4");
	ffmpegOpen();


	s_grid = new CoordGrid();
	g_ball = new RigidSphere();

	//N : 7366    M : 43776
	s_model = new Model("resource/models/mesh1/head.dae");
	//N : 43922   M : 262656
	//s_model = new Model("resource/models/mesh1/head2.dae");
	//N : 175402  M : 1050624
	//s_model = new Model("resource/models/mesh1/head3.dae");
	
	//N : 1902    M : 11094
	//s_model = new Model("resource/models/mesh2/head.dae");
	//N : 7514    M : 44412
	//s_model = new Model("resource/models/mesh2/head2.dae");
	//N : 29838   M : 177648
	//s_model = new Model("resource/models/mesh2/head3.dae");

	// Some rendering settings
	glEnable(GL_DEPTH_TEST);
	glPolygonOffset(1.0, 2);
}
コード例 #2
0
ファイル: main.c プロジェクト: FuckWisdom/island
void setup()
{
    setupAntTweakBar();

    checkCudaErrors(cuInit(0));

    if (sketchArgc != 2)
    {
        printf("Usage: %s <cuda_toy.cu>\n", sketchArgv[0]);
        quit();
        return;
    }
    if (RMT_ERROR_NONE != rmt_CreateGlobalInstance(&rmt)) {
        //return -1;
    }
    
    int r = uv_fs_event_init(uv_default_loop(), &fs_event);
    r = uv_fs_event_start(&fs_event, on_fs_event_cb, sketchArgv[1], 0);

    char title[256];
    sprintf(title, "CUDA ShaderToy - %s", sketchArgv[1]);
    glfwSetWindowTitle(window, title);

    setupModuleResource(sketchArgv[1]);
    setupSizeResource();

    rmtCUDABind bind;
    bind.context = cuContext;
    bind.CtxSetCurrent = &cuCtxSetCurrent;
    bind.CtxGetCurrent = &cuCtxGetCurrent;
    bind.EventCreate = &cuEventCreate;
    bind.EventDestroy = &cuEventDestroy;
    bind.EventRecord = &cuEventRecord;
    bind.EventQuery = &cuEventQuery;
    bind.EventElapsedTime = &cuEventElapsedTime;
    rmt_BindCUDA(&bind);

    rmt_BindOpenGL();
}