Пример #1
0
	bool osgSDLViewer::renderOneFrame(void) 
	{
		// Lock surface if needed
		if ( SDL_MUSTLOCK( mScreen ) )
			if ( SDL_LockSurface( mScreen ) < 0 )
				return false;
					
    	//Clear the color and depth buffers.
    	glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
    	 	
    	// Frame started
    	if (!frameStarted())
    		return false;    	
    	
    	// Update Scene
    	update();
    	redraw();
    	
    	// Frame ended
    	if (!frameEnded())
    		return false;
    		    	
    	// Unlock if needed
		if ( SDL_MUSTLOCK( mScreen ) ) 
			SDL_UnlockSurface( mScreen );    	

    	// Swap Buffers
    	SDL_GL_SwapBuffers();
    	
    	return true;
	}
Пример #2
0
int ShaderEditor::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QMainWindow::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: frameStarted(); break;
        case 1: Tick(); break;
        default: ;
        }
        _id -= 2;
    }
    return _id;
}