Implemented notification system needed for occlusion culling and transparency sorting
--HG-- extra : convert_revision : svn%3A7752d6cf-9f14-4ad2-affc-04f1e67b81a5/trunk%4072
This commit is contained in:
@@ -44,8 +44,6 @@
|
||||
|
||||
/* OpenGL names for the renderbuffer and framebuffers used to render to this view */
|
||||
GLuint viewFramebuffer, viewRenderbuffer;
|
||||
|
||||
KREngine *renderEngine;
|
||||
}
|
||||
|
||||
// OpenGL drawing
|
||||
@@ -53,9 +51,11 @@
|
||||
- (void)destroyFramebuffer;
|
||||
- (void)setDisplayFramebuffer;
|
||||
- (BOOL)presentFramebuffer;
|
||||
- (KREngine *)getEngine;
|
||||
- (KRScene *)getScene;
|
||||
- (BOOL)loadObjects;
|
||||
|
||||
@property(nonatomic,retain) KREngine *engine;
|
||||
|
||||
- (KRScene *)getScene;
|
||||
|
||||
|
||||
@end
|
||||
|
||||
@@ -43,7 +43,6 @@
|
||||
}
|
||||
|
||||
- (id)initWithFrame:(CGRect)frame {
|
||||
|
||||
self = [super initWithFrame:frame];
|
||||
if (self) {
|
||||
|
||||
@@ -79,17 +78,14 @@
|
||||
}
|
||||
|
||||
// Initialize KREngine
|
||||
renderEngine = [[KREngine alloc] initForWidth: backingWidth Height: backingHeight];
|
||||
_engine = [[KREngine alloc] initForWidth: backingWidth Height: backingHeight];
|
||||
[self loadObjects];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void)dealloc {
|
||||
if(renderEngine) {
|
||||
[renderEngine release];
|
||||
renderEngine = nil;
|
||||
}
|
||||
[_engine release]; _engine = nil;
|
||||
|
||||
[super dealloc];
|
||||
}
|
||||
@@ -105,11 +101,11 @@
|
||||
|
||||
for (NSString* fileName in [fileManager contentsOfDirectoryAtPath: documentsDirectory error:nil]) {
|
||||
NSString* path = [NSString stringWithFormat:@"%@/%@", documentsDirectory, fileName];
|
||||
[renderEngine loadResource: path];
|
||||
[self.engine loadResource: path];
|
||||
}
|
||||
|
||||
[renderEngine setNearZ: 5.0];
|
||||
[renderEngine setFarZ: 500.0];
|
||||
[self.engine setNearZ: 5.0];
|
||||
[self.engine setFarZ: 500.0];
|
||||
//[renderEngine setNearZ: 1.0];
|
||||
//[renderEngine setFarZ: 3000.0];
|
||||
|
||||
@@ -194,14 +190,9 @@
|
||||
return success;
|
||||
}
|
||||
|
||||
- (KREngine *)getEngine;
|
||||
- (KRScene *)getScene
|
||||
{
|
||||
return renderEngine;
|
||||
}
|
||||
|
||||
- (KRScene *)getScene;
|
||||
{
|
||||
return renderEngine.context.getSceneManager()->getFirstScene();
|
||||
return self.engine.context->getSceneManager()->getFirstScene();
|
||||
}
|
||||
|
||||
#pragma mark -
|
||||
|
||||
@@ -194,7 +194,7 @@
|
||||
const GLfloat d2r = PI * 2 / 360;
|
||||
|
||||
|
||||
KREngine *engine = [glView getEngine];
|
||||
KREngine *engine = glView.engine;
|
||||
int iParam = int(dLeftSlider * ([engine getParameterCount] + 1));
|
||||
if(iParam > [engine getParameterCount]) {
|
||||
iParam = [engine getParameterCount];
|
||||
@@ -256,7 +256,8 @@
|
||||
|
||||
|
||||
[glView setDisplayFramebuffer];
|
||||
[engine renderScene: [glView getScene] WithPosition:camera_position Yaw: camera_yaw Pitch: camera_pitch Roll:0.0f];
|
||||
KRScene *scene = [glView getScene];
|
||||
[engine renderScene: scene WithPosition:camera_position Yaw: camera_yaw Pitch: camera_pitch Roll:0.0f];
|
||||
[glView presentFramebuffer];
|
||||
|
||||
[framePool release];
|
||||
|
||||
@@ -246,7 +246,7 @@
|
||||
29B97313FDCFA39411CA2CEA /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 0430;
|
||||
LastUpgradeCheck = 0440;
|
||||
};
|
||||
buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "KRObjView" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
|
||||
Reference in New Issue
Block a user