Exposed an NSDictionary containing the indexes of the engine parameters

--HG--
extra : convert_revision : svn%3A7752d6cf-9f14-4ad2-affc-04f1e67b81a5/trunk%4071
This commit is contained in:
kearwood
2012-08-16 22:50:30 +00:00
parent 97b036878e
commit 3b2d71221a
2 changed files with 37 additions and 34 deletions

View File

@@ -45,6 +45,7 @@ typedef enum KREngineParameterType {KRENGINE_PARAMETER_INT, KRENGINE_PARAMETER_F
@interface KREngine : NSObject @interface KREngine : NSObject
@property(nonatomic, readonly) NSDictionary *parameter_names;
@property(nonatomic, assign) KRContext *context; @property(nonatomic, assign) KRContext *context;
@property(nonatomic, assign) KRCamera *camera; @property(nonatomic, assign) KRCamera *camera;
@property(nonatomic, retain) NSString *debug_text; @property(nonatomic, retain) NSString *debug_text;

View File

@@ -58,6 +58,39 @@ double const PI = 3.141592653589793f;
if ((self = [super init])) { if ((self = [super init])) {
_context = new KRContext(); _context = new KRContext();
_camera = new KRCamera(*_context, width, height); _camera = new KRCamera(*_context, width, height);
_parameter_names = @{
@"camera_fov" : @0,
@"shadow_quality" : @1,
@"enable_per_pixel" : @2,
@"enable_diffuse_map" : @3,
@"enable_normal_map" : @4,
@"enable_spec_map" : @5,
@"enable_reflection_map" : @6,
@"enable_light_map" : @7,
@"ambient_r" : @8,
@"ambient_g" : @9,
@"ambient_b" : @10,
@"sun_r" : @11,
@"sun_g" : @12,
@"sun_b" : @13,
@"dof_quality" : @14,
@"dof_depth" : @15,
@"dof_falloff" : @16,
@"flash_enable" : @17,
@"flash_intensity" : @18,
@"flash_depth" : @19,
@"flash_falloff" : @20,
@"vignette_enable" : @21,
@"vignette_radius" : @22,
@"vignette_falloff" : @23,
@"debug_shadowmap" : @24,
@"debug_pssm" : @25,
@"debug_enable_ambient" : @26,
@"debug_enable_diffuse" : @27,
@"debug_enable_specular" : @28,
@"debug_super_shiny" : @29,
@"enable_deferred_lighting" : @30
};
[self loadShaders]; [self loadShaders];
} }
@@ -106,6 +139,7 @@ double const PI = 3.141592653589793f;
- (void)dealloc - (void)dealloc
{ {
[_parameter_names release]; _parameter_names = nil;
if(_camera) { if(_camera) {
delete _camera; _camera = NULL; delete _camera; _camera = NULL;
} }
@@ -122,41 +156,9 @@ double const PI = 3.141592653589793f;
-(NSString *)getParameterNameWithIndex: (int)i -(NSString *)getParameterNameWithIndex: (int)i
{ {
NSString *parameter_names[31] = { return [[self.parameter_names allKeysForObject:[NSNumber numberWithInt:i]] objectAtIndex:0];
@"camera_fov",
@"shadow_quality",
@"enable_per_pixel",
@"enable_diffuse_map",
@"enable_normal_map",
@"enable_spec_map",
@"enable_reflection_map",
@"enable_light_map",
@"ambient_r",
@"ambient_g",
@"ambient_b",
@"sun_r",
@"sun_g",
@"sun_b",
@"dof_quality",
@"dof_depth",
@"dof_falloff",
@"flash_enable",
@"flash_intensity",
@"flash_depth",
@"flash_falloff",
@"vignette_enable",
@"vignette_radius",
@"vignette_falloff",
@"debug_shadowmap",
@"debug_pssm",
@"debug_enable_ambient",
@"debug_enable_diffuse",
@"debug_enable_specular",
@"debug_super_shiny",
@"enable_deferred_lighting"
};
return parameter_names[i];
} }
-(NSString *)getParameterLabelWithIndex: (int)i -(NSString *)getParameterLabelWithIndex: (int)i
{ {
NSString *parameter_labels[31] = { NSString *parameter_labels[31] = {