Files
kraken/KREngine/KREngine/Classes/KRReverbZone.h
kearwood 1712059f0a Changed naming conventions:
- KRModel renamed to KRMesh
- KRModelManager renamed to KRMeshManager
- KRInstance renamed to KRModel
- "instance" in scene graph xml is now "model"

Implemented layer masks for line and ray casting
Implemented KRReverbZone object, to be later wired into audio engine to select reverb preset based on listener proximity

--HG--
extra : convert_revision : svn%3A7752d6cf-9f14-4ad2-affc-04f1e67b81a5/trunk%40211
2013-01-09 22:37:23 +00:00

43 lines
1.0 KiB
Objective-C

//
// KRReverbZone.h
// KREngine
//
// Created by Kearwood Gilbert on 2012-12-06.
// Copyright (c) 2012 Kearwood Software. All rights reserved.
//
#ifndef KRREVERB_ZONE_H
#define KRREVERB_ZONE_H
#import "KRResource.h"
#import "KRNode.h"
#import "KRTexture.h"
class KRReverbZone : public KRNode {
public:
KRReverbZone(KRScene &scene, std::string name);
virtual ~KRReverbZone();
virtual std::string getElementName();
virtual tinyxml2::XMLElement *saveXML( tinyxml2::XMLNode *parent);
virtual void loadXML(tinyxml2::XMLElement *e);
void render(KRCamera *pCamera, std::vector<KRLight *> &lights, const KRViewport &viewport, KRNode::RenderPass renderPass);
float getGradientDistance();
void setGradientDistance(float gradient_distance);
std::string getReverbPreset();
void setReverbPreset(const std::string &reverb_preset_name);
unsigned int getReverbSettingId();
virtual KRAABB getBounds();
private:
float m_gradient_distance;
std::string m_reverb_preset_name;
};
#endif