Пример #1
0
void SR_NodeInit(SceneRenderer *sr, SFNode *node)
{
	switch (Node_GetTag(node)) {
	case TAG_MPEG4_AnimationStream: InitAnimationStream(sr, node); break;
	case TAG_MPEG4_AudioBuffer: InitAudioBuffer(sr, node); break;
	case TAG_MPEG4_AudioSource: InitAudioSource(sr, node); break;
	case TAG_MPEG4_AudioClip: case TAG_X3D_AudioClip: InitAudioClip(sr, node); break;
	case TAG_MPEG4_TimeSensor: case TAG_X3D_TimeSensor: InitTimeSensor(sr, node); break;
	case TAG_MPEG4_ImageTexture: case TAG_X3D_ImageTexture: InitImageTexture(sr, node); break;
	case TAG_MPEG4_PixelTexture: case TAG_X3D_PixelTexture: InitPixelTexture(sr, node); break;
	case TAG_MPEG4_MovieTexture: case TAG_X3D_MovieTexture: InitMovieTexture(sr, node); break;
	default:
		sr->visual_renderer->NodeInit(sr->visual_renderer, node);
		break;
	}
}
Пример #2
0
void gf_sr_on_node_init(GF_Renderer *sr, GF_Node *node)
{
    switch (gf_node_get_tag(node)) {
    case TAG_MPEG4_AnimationStream:
        InitAnimationStream(sr, node);
        break;
    case TAG_MPEG4_AudioBuffer:
        InitAudioBuffer(sr, node);
        break;
    case TAG_MPEG4_AudioSource:
        InitAudioSource(sr, node);
        break;
    case TAG_MPEG4_AudioClip:
    case TAG_X3D_AudioClip:
        InitAudioClip(sr, node);
        break;
    case TAG_MPEG4_TimeSensor:
    case TAG_X3D_TimeSensor:
        InitTimeSensor(sr, node);
        break;
    case TAG_MPEG4_ImageTexture:
    case TAG_X3D_ImageTexture:
        InitImageTexture(sr, node);
        break;
    case TAG_MPEG4_PixelTexture:
    case TAG_X3D_PixelTexture:
        InitPixelTexture(sr, node);
        break;
    case TAG_MPEG4_MovieTexture:
    case TAG_X3D_MovieTexture:
        InitMovieTexture(sr, node);
        break;
    default:
        sr->visual_renderer->NodeInit(sr->visual_renderer, node);
        break;
    }
}
Пример #3
0
int main(int argc, char **argv)
{
    glutInit(&argc, argv);

    glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
    glutInitWindowSize(512, 512);
    glutInitWindowPosition (100, 100);

    g_win = glutCreateWindow(argv[0]);

#ifndef __APPLE__
    glewInit();
    if (!glewIsSupported("GL_VERSION_2_0"))
    {
        printf("OpenGL 2.0 not supported\n");
        exit(1);
    }
#endif

    glutReshapeFunc(Reshape);
    glutKeyboardFunc(Key);
    glutSpecialFunc(SpecialKey);
    glutDisplayFunc(Redisplay);

    const char * filename = 0;
    if(argc>1) filename = argv[1];

    std::cout << USAGE_TEXT << std::endl;

    // TODO: switch profiles based on shading language
    // std::cout << "GL_SHADING_LANGUAGE_VERSION: " << glGetString(GL_SHADING_LANGUAGE_VERSION) << std::endl;
    AllocateLut3D();

    InitImageTexture(filename);
    try
    {
        InitOCIO(filename);
    }
    catch(OCIO::Exception & e)
    {
        std::cerr << e.what() << std::endl;
        exit(1);
    }

    PopulateOCIOMenus();

    Reshape(1024, 512);

    UpdateOCIOGLState();

    Redisplay();

    /*
    if (Anim)
    {
        glutIdleFunc(Idle);
    }
    */

    glutMainLoop();

    return 0;
}