From f356df178f3e05e152010220ba6bd13f855bf396 Mon Sep 17 00:00:00 2001 From: Kearwood Gilbert Date: Sat, 30 Jan 2016 20:13:23 -0800 Subject: [PATCH] WIP OSX and TvOS support --- Kraken.xcodeproj/project.pbxproj | 551 +++++++++++++++++- kraken/KRCamera.cpp | 2 +- kraken/KRContext.cpp | 17 +- kraken/KRContext.h | 10 + kraken/KRContext_ios.mm | 40 ++ kraken/KRContext_osx.mm | 82 +++ kraken/KREngine-common.h | 10 + kraken/KRShader.cpp | 2 +- kraken/KRShaderManager.cpp | 2 +- kraken/KRStreamer.mm | 47 +- kraken_osx/KrakenView.h | 16 + kraken_osx/KrakenView.mm | 186 ++++++ .../Shaders/occlusion_test.fsh | 3 +- .../Shaders/ObjectShader_osx.fsh | 96 +-- .../Shaders/ObjectShader_osx.vsh | 50 +- .../Shaders/PostShader_osx.fsh | 121 ++-- .../Shaders/PostShader_osx.vsh | 8 +- .../Shaders/ShadowShader_osx.fsh | 6 +- .../Shaders/ShadowShader_osx.vsh | 2 +- .../Shaders/debug_font_osx.fsh | 8 +- .../Shaders/debug_font_osx.vsh | 6 +- .../Shaders/dust_particle_osx.fsh | 10 +- .../Shaders/dust_particle_osx.vsh | 10 +- .../Shaders/flare_osx.fsh | 8 +- .../Shaders/flare_osx.vsh | 10 +- .../Shaders/light_directional_osx.fsh | 7 +- .../Shaders/light_directional_osx.vsh | 2 +- .../Shaders/light_point_inside_osx.fsh | 7 +- .../Shaders/light_point_inside_osx.vsh | 2 +- .../Shaders/light_point_osx.fsh | 7 +- .../Shaders/light_point_osx.vsh | 2 +- .../Shaders/occlusion_test_osx.fsh | 6 +- .../Shaders/occlusion_test_osx.vsh | 2 +- .../Shaders/simple_blit_osx.fsh | 6 +- .../Shaders/simple_blit_osx.vsh | 6 +- .../Shaders/sky_box_osx.fsh | 6 +- .../Shaders/sky_box_osx.vsh | 7 +- .../Shaders/sprite_osx.fsh | 6 +- .../Shaders/sprite_osx.vsh | 4 +- .../Shaders/visualize_overlay_osx.fsh | 4 +- .../Shaders/visualize_overlay_osx.vsh | 2 +- .../volumetric_fog_downsampled_osx.fsh | 8 +- .../volumetric_fog_downsampled_osx.vsh | 4 +- .../Shaders/volumetric_fog_osx.fsh | 6 +- .../Shaders/volumetric_fog_osx.vsh | 4 +- kraken_tvos/Kraken-Prefix.pch | 8 + kraken_tvos/info.plist | 26 + kraken_tvos/kraken.h | 19 + 48 files changed, 1185 insertions(+), 269 deletions(-) create mode 100644 kraken/KRContext_ios.mm create mode 100644 kraken/KRContext_osx.mm create mode 100644 kraken_osx/KrakenView.h create mode 100644 kraken_osx/KrakenView.mm create mode 100644 kraken_tvos/Kraken-Prefix.pch create mode 100644 kraken_tvos/info.plist create mode 100644 kraken_tvos/kraken.h diff --git a/Kraken.xcodeproj/project.pbxproj b/Kraken.xcodeproj/project.pbxproj index 0919cae..bac6287 100644 --- a/Kraken.xcodeproj/project.pbxproj +++ b/Kraken.xcodeproj/project.pbxproj @@ -180,6 +180,166 @@ E416AA9D1671375C000F6786 /* KRAnimationCurveManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E416AA9B1671375C000F6786 /* KRAnimationCurveManager.cpp */; }; E41843921678704000DBD6CF /* KRCollider.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 104A335C1672D31B001C8BA6 /* KRCollider.cpp */; }; E41B6BAA16BE437800B510EB /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E41B6BA916BE437800B510EB /* CoreAudio.framework */; }; + E41CAB8D1B75D8DF00F3387D /* KrakenView.h in Headers */ = {isa = PBXBuildFile; fileRef = E41CAB8B1B75D8DF00F3387D /* KrakenView.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E41CAB8E1B75D8DF00F3387D /* KrakenView.mm in Sources */ = {isa = PBXBuildFile; fileRef = E41CAB8C1B75D8DF00F3387D /* KrakenView.mm */; }; + E41CAB921B75DFF100F3387D /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E41CAB911B75DFF100F3387D /* QuartzCore.framework */; }; + E423D6901BEDEE2D0021812E /* tinyxml2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E45E03C418790EC0006DA23F /* tinyxml2.cpp */; }; + E423D6911BEDEE2D0021812E /* forsyth.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E45E03CB18790EFF006DA23F /* forsyth.cpp */; }; + E423D6921BEDEE2D0021812E /* KRAudioManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4F027C516979CCD00D4427D /* KRAudioManager.cpp */; }; + E423D6931BEDEE2D0021812E /* KRAudioSample.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4F027CC16979CE200D4427D /* KRAudioSample.cpp */; }; + E423D6941BEDEE2D0021812E /* KRAudioBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4F027DC1697BFFF00D4427D /* KRAudioBuffer.cpp */; }; + E423D6951BEDEE2D0021812E /* KRUnknownManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E414F9A41694D977000B3D58 /* KRUnknownManager.cpp */; }; + E423D6961BEDEE2D0021812E /* KRUnknown.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E414F9AA1694DA37000B3D58 /* KRUnknown.cpp */; }; + E423D6971BEDEE2D0021812E /* KRAnimationCurve.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E428C3061669628A00A16EDF /* KRAnimationCurve.cpp */; }; + E423D6981BEDEE2D0021812E /* KRAnimationCurveManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E416AA9B1671375C000F6786 /* KRAnimationCurveManager.cpp */; }; + E423D6991BEDEE2D0021812E /* KRAnimationLayer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E428C310166971FE00A16EDF /* KRAnimationLayer.cpp */; }; + E423D69A1BEDEE2D0021812E /* KRAnimationManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E428C2F41669611600A16EDF /* KRAnimationManager.cpp */; }; + E423D69B1BEDEE2D0021812E /* KRAnimation.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E428C2FA1669613200A16EDF /* KRAnimation.cpp */; }; + E423D69C1BEDEE2D0021812E /* KRAnimationAttribute.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E428C3181669A25D00A16EDF /* KRAnimationAttribute.cpp */; }; + E423D69D1BEDEE2D0021812E /* KRBundleManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E488399A15F92BE000BD66D5 /* KRBundleManager.cpp */; }; + E423D69E1BEDEE2D0021812E /* KRBundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E488399215F928CA00BD66D5 /* KRBundle.cpp */; }; + E423D69F1BEDEE2D0021812E /* KRMaterialManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E491017B13C99BDC0098455B /* KRMaterialManager.cpp */; }; + E423D6A01BEDEE2D0021812E /* KRMaterial.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E491017C13C99BDC0098455B /* KRMaterial.cpp */; }; + E423D6A11BEDEE2D0021812E /* KRMeshManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E491018213C99BDC0098455B /* KRMeshManager.cpp */; }; + E423D6A21BEDEE2D0021812E /* KRMesh.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E491017913C99BDC0098455B /* KRMesh.cpp */; }; + E423D6A31BEDEE2D0021812E /* KRMeshCube.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4C454AE167BB8FC003586CD /* KRMeshCube.cpp */; }; + E423D6A41BEDEE2D0021812E /* KRMeshSphere.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4C454B4167BC05C003586CD /* KRMeshSphere.cpp */; }; + E423D6A51BEDEE2D0021812E /* KRMeshQuad.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E40F982A184A7A2700CFA4D8 /* KRMeshQuad.cpp */; }; + E423D6A61BEDEE2D0021812E /* KRTextureManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E491018013C99BDC0098455B /* KRTextureManager.cpp */; }; + E423D6A71BEDEE2D0021812E /* KRTexture2D.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E491018113C99BDC0098455B /* KRTexture2D.cpp */; }; + E423D6A81BEDEE2D0021812E /* KRContext_ios.mm in Sources */ = {isa = PBXBuildFile; fileRef = E4B74A631AD7A02C00067A78 /* KRContext_ios.mm */; }; + E423D6A91BEDEE2D0021812E /* KRTexture.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4B175AA161F5A1000B8FB80 /* KRTexture.cpp */; }; + E423D6AA1BEDEE2D0021812E /* KRTextureCube.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4B175B0161F5FAE00B8FB80 /* KRTextureCube.cpp */; }; + E423D6AB1BEDEE2D0021812E /* KRTexturePVR.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4CA10E81637BD2B005D9400 /* KRTexturePVR.cpp */; }; + E423D6AC1BEDEE2D0021812E /* KRTextureTGA.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4CA10EE1637BD58005D9400 /* KRTextureTGA.cpp */; }; + E423D6AD1BEDEE2D0021812E /* KRTextureAnimated.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E460292716681D1000261BB9 /* KRTextureAnimated.cpp */; }; + E423D6AE1BEDEE2D0021812E /* KRTextureKTX.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E404701E18695DD200F01F42 /* KRTextureKTX.cpp */; }; + E423D6AF1BEDEE2D0021812E /* KRShaderManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E47C25A613F4F6AB00FF4370 /* KRShaderManager.cpp */; }; + E423D6B01BEDEE2D0021812E /* KRShader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E47C25A813F4F6DD00FF4370 /* KRShader.cpp */; }; + E423D6B11BEDEE2D0021812E /* KRSceneManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E46C214A15364DEC009CABF3 /* KRSceneManager.cpp */; }; + E423D6B21BEDEE2D0021812E /* KRScene.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E414BAE81435585A00A668C4 /* KRScene.cpp */; }; + E423D6B31BEDEE2D0021812E /* KRCollider.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 104A335C1672D31B001C8BA6 /* KRCollider.cpp */; }; + E423D6B41BEDEE2D0021812E /* KRAudioSource.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E48B68131697794F00D99917 /* KRAudioSource.cpp */; }; + E423D6B51BEDEE2D0021812E /* KRAmbientZone.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E494322F169E08D200BCB891 /* KRAmbientZone.cpp */; }; + E423D6B61BEDEE2D0021812E /* KRReverbZone.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E450273716E0491D00FDEC5C /* KRReverbZone.cpp */; }; + E423D6B71BEDEE2D0021812E /* KRCamera.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E48B3CBF14393E2F000C50E2 /* KRCamera.cpp */; }; + E423D6B81BEDEE2D0021812E /* KRParticleSystem.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4324BA716444C230043185B /* KRParticleSystem.cpp */; }; + E423D6B91BEDEE2D0021812E /* KRParticleSystemNewtonian.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4324BAD16444E120043185B /* KRParticleSystemNewtonian.cpp */; }; + E423D6BA1BEDEE2D0021812E /* KRModel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E414BAE41435558800A668C4 /* KRModel.cpp */; }; + E423D6BB1BEDEE2D0021812E /* KRLight.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E461A155152E54F700F2044A /* KRLight.cpp */; }; + E423D6BC1BEDEE2D0021812E /* KRPointLight.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E461A158152E557E00F2044A /* KRPointLight.cpp */; }; + E423D6BD1BEDEE2D0021812E /* KRDirectionalLight.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E461A15E152E565700F2044A /* KRDirectionalLight.cpp */; }; + E423D6BE1BEDEE2D0021812E /* KRSpotLight.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E461A164152E56C000F2044A /* KRSpotLight.cpp */; }; + E423D6BF1BEDEE2D0021812E /* KRNode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4F975351536221C00FD60B2 /* KRNode.cpp */; }; + E423D6C01BEDEE2D0021812E /* KRBone.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E480BE6B1671C653004EC8AD /* KRBone.cpp */; }; + E423D6C11BEDEE2D0021812E /* KRLODGroup.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4AE635B1704FB0A00B460CD /* KRLODGroup.cpp */; }; + E423D6C21BEDEE2D0021812E /* KRLocator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E468447D17FFDF51001F1FA1 /* KRLocator.cpp */; }; + E423D6C31BEDEE2D0021812E /* KRLODSet.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E43F70DA181B20E300136169 /* KRLODSet.cpp */; }; + E423D6C41BEDEE2D0021812E /* KRSprite.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E40F9830184A7BAC00CFA4D8 /* KRSprite.cpp */; }; + E423D6C51BEDEE2D0021812E /* KRMat4.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E491017713C99BDC0098455B /* KRMat4.cpp */; }; + E423D6C61BEDEE2D0021812E /* KRVector3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E491017F13C99BDC0098455B /* KRVector3.cpp */; }; + E423D6C71BEDEE2D0021812E /* KRVector2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E497B945151BA99400D3DC67 /* KRVector2.cpp */; }; + E423D6C81BEDEE2D0021812E /* KRQuaternion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E42CB1EF158446AB0066E0D8 /* KRQuaternion.cpp */; }; + E423D6C91BEDEE2D0021812E /* KRAABB.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E40BA45215EFF79500D7C3DD /* KRAABB.cpp */; }; + E423D6CA1BEDEE2D0021812E /* KRVector4.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4EC73BF1720B1FF0065299F /* KRVector4.cpp */; }; + E423D6CB1BEDEE2D0021812E /* KRFloat.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E48CF940173453990005EBBB /* KRFloat.cpp */; }; + E423D6CC1BEDEE2D0021812E /* KRTriangle3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4F89BB218A6DB1200015637 /* KRTriangle3.cpp */; }; + E423D6CD1BEDEE2D0021812E /* KRResource.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E497B94C151BCF2500D3DC67 /* KRResource.cpp */; }; + E423D6CE1BEDEE2D0021812E /* KRResource+obj.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E497B94F151BD2CE00D3DC67 /* KRResource+obj.cpp */; }; + E423D6CF1BEDEE2D0021812E /* KRBehavior.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E45134B41746A4A300443C21 /* KRBehavior.cpp */; }; + E423D6D01BEDEE2D0021812E /* KRContext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E48C697115374F7E00232E28 /* KRContext.cpp */; }; + E423D6D11BEDEE2D0021812E /* KRContextObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E43B0AD415DDCA0C00A5CB9F /* KRContextObject.cpp */; }; + E423D6D21BEDEE2D0021812E /* KRDataBlock.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E46F4A0D155E003000CCF8B8 /* KRDataBlock.cpp */; }; + E423D6D31BEDEE2D0021812E /* KREngine.mm in Sources */ = {isa = PBXBuildFile; fileRef = E491016F13C99BDC0098455B /* KREngine.mm */; }; + E423D6D41BEDEE2D0021812E /* KRHitInfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4C454BA167BD248003586CD /* KRHitInfo.cpp */; }; + E423D6D51BEDEE2D0021812E /* KROctree.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4924C2415EE95E700B965C6 /* KROctree.cpp */; }; + E423D6D61BEDEE2D0021812E /* KROctreeNode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4924C2915EE96AA00B965C6 /* KROctreeNode.cpp */; }; + E423D6D71BEDEE2D0021812E /* KRRenderSettings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E44F38271683B24400399B5D /* KRRenderSettings.cpp */; }; + E423D6D81BEDEE2D0021812E /* KRStreamer.mm in Sources */ = {isa = PBXBuildFile; fileRef = E43F70E31824D9AB00136169 /* KRStreamer.mm */; }; + E423D6D91BEDEE2D0021812E /* KRViewport.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4CA11771639CC8E005D9400 /* KRViewport.cpp */; }; + E423D6DB1BEDEE2D0021812E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E491016413C99B9E0098455B /* Foundation.framework */; }; + E423D6DC1BEDEE2D0021812E /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E491019F13C99BF50098455B /* OpenGLES.framework */; }; + E423D6DD1BEDEE2D0021812E /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E4CA10F51638BCAE005D9400 /* Accelerate.framework */; }; + E423D6DE1BEDEE2D0021812E /* OpenAL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E4F027D21697A01300D4427D /* OpenAL.framework */; }; + E423D6DF1BEDEE2D0021812E /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E4F027F91698116000D4427D /* AudioToolbox.framework */; }; + E423D6E01BEDEE2D0021812E /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E41B6BA716BE436100B510EB /* CoreAudio.framework */; }; + E423D6E31BEDEE2D0021812E /* tinyxml2.h in Headers */ = {isa = PBXBuildFile; fileRef = E45E03C518790EC0006DA23F /* tinyxml2.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6E41BEDEE2D0021812E /* forsyth.h in Headers */ = {isa = PBXBuildFile; fileRef = E45E03CC18790EFF006DA23F /* forsyth.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6E51BEDEE2D0021812E /* KRAudioManager.h in Headers */ = {isa = PBXBuildFile; fileRef = E4F027C616979CCD00D4427D /* KRAudioManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6E61BEDEE2D0021812E /* KRAudioSample.h in Headers */ = {isa = PBXBuildFile; fileRef = E4F027CD16979CE200D4427D /* KRAudioSample.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6E71BEDEE2D0021812E /* KRAudioBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = E4F027DD1697BFFF00D4427D /* KRAudioBuffer.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6E81BEDEE2D0021812E /* KRUnknownManager.h in Headers */ = {isa = PBXBuildFile; fileRef = E414F9A51694D977000B3D58 /* KRUnknownManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6E91BEDEE2D0021812E /* KRUnknown.h in Headers */ = {isa = PBXBuildFile; fileRef = E414F9AB1694DA37000B3D58 /* KRUnknown.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6EA1BEDEE2D0021812E /* KRAnimationCurve.h in Headers */ = {isa = PBXBuildFile; fileRef = E428C3031669627900A16EDF /* KRAnimationCurve.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6EB1BEDEE2D0021812E /* KRAnimationCurveManager.h in Headers */ = {isa = PBXBuildFile; fileRef = E416AA9816713749000F6786 /* KRAnimationCurveManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6EC1BEDEE2D0021812E /* KRAnimationLayer.h in Headers */ = {isa = PBXBuildFile; fileRef = E428C30F166971FE00A16EDF /* KRAnimationLayer.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6ED1BEDEE2D0021812E /* KRAnimationManager.h in Headers */ = {isa = PBXBuildFile; fileRef = E428C2F11669610500A16EDF /* KRAnimationManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6EE1BEDEE2D0021812E /* KRAnimation.h in Headers */ = {isa = PBXBuildFile; fileRef = E428C2F71669612500A16EDF /* KRAnimation.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6EF1BEDEE2D0021812E /* KRAnimationAttribute.h in Headers */ = {isa = PBXBuildFile; fileRef = E428C3151669A24B00A16EDF /* KRAnimationAttribute.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6F01BEDEE2D0021812E /* KRBundleManager.h in Headers */ = {isa = PBXBuildFile; fileRef = E488399B15F92BE000BD66D5 /* KRBundleManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6F11BEDEE2D0021812E /* KRBundle.h in Headers */ = {isa = PBXBuildFile; fileRef = E488399315F928CA00BD66D5 /* KRBundle.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6F21BEDEE2D0021812E /* KRMaterialManager.h in Headers */ = {isa = PBXBuildFile; fileRef = E491018413C99BDC0098455B /* KRMaterialManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6F31BEDEE2D0021812E /* KRMaterial.h in Headers */ = {isa = PBXBuildFile; fileRef = E491017D13C99BDC0098455B /* KRMaterial.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6F41BEDEE2D0021812E /* KRMeshManager.h in Headers */ = {isa = PBXBuildFile; fileRef = E491018313C99BDC0098455B /* KRMeshManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6F51BEDEE2D0021812E /* KRMesh.h in Headers */ = {isa = PBXBuildFile; fileRef = E491017A13C99BDC0098455B /* KRMesh.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6F61BEDEE2D0021812E /* KRMeshCube.h in Headers */ = {isa = PBXBuildFile; fileRef = E4C454AB167BB8EC003586CD /* KRMeshCube.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6F71BEDEE2D0021812E /* KRMeshSphere.h in Headers */ = {isa = PBXBuildFile; fileRef = E4C454B1167BC04B003586CD /* KRMeshSphere.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6F81BEDEE2D0021812E /* KRMeshQuad.h in Headers */ = {isa = PBXBuildFile; fileRef = E40F982B184A7A2700CFA4D8 /* KRMeshQuad.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6F91BEDEE2D0021812E /* KRTextureManager.h in Headers */ = {isa = PBXBuildFile; fileRef = E491018513C99BDC0098455B /* KRTextureManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6FA1BEDEE2D0021812E /* KRTexture2D.h in Headers */ = {isa = PBXBuildFile; fileRef = E491018613C99BDC0098455B /* KRTexture2D.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6FB1BEDEE2D0021812E /* KRTexture.h in Headers */ = {isa = PBXBuildFile; fileRef = E4B175AB161F5A1000B8FB80 /* KRTexture.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6FC1BEDEE2D0021812E /* KRTextureCube.h in Headers */ = {isa = PBXBuildFile; fileRef = E4B175B1161F5FAF00B8FB80 /* KRTextureCube.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6FD1BEDEE2D0021812E /* KRTexturePVR.h in Headers */ = {isa = PBXBuildFile; fileRef = E4CA10E41637BD0A005D9400 /* KRTexturePVR.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6FE1BEDEE2D0021812E /* KRTextureTGA.h in Headers */ = {isa = PBXBuildFile; fileRef = E4CA10EB1637BD47005D9400 /* KRTextureTGA.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D6FF1BEDEE2D0021812E /* KRTextureAnimated.h in Headers */ = {isa = PBXBuildFile; fileRef = E460292516681CFE00261BB9 /* KRTextureAnimated.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7001BEDEE2D0021812E /* KRTextureKTX.h in Headers */ = {isa = PBXBuildFile; fileRef = E404701F18695DD200F01F42 /* KRTextureKTX.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7011BEDEE2D0021812E /* KRShaderManager.h in Headers */ = {isa = PBXBuildFile; fileRef = E47C25A113F4F65A00FF4370 /* KRShaderManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7021BEDEE2D0021812E /* KRShader.h in Headers */ = {isa = PBXBuildFile; fileRef = E47C25A413F4F66F00FF4370 /* KRShader.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7031BEDEE2D0021812E /* KRSceneManager.h in Headers */ = {isa = PBXBuildFile; fileRef = E46C214915364DDB009CABF3 /* KRSceneManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7041BEDEE2D0021812E /* KRScene.h in Headers */ = {isa = PBXBuildFile; fileRef = E414BAE6143557D200A668C4 /* KRScene.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7051BEDEE2D0021812E /* KRCollider.h in Headers */ = {isa = PBXBuildFile; fileRef = 104A335D1672D31C001C8BA6 /* KRCollider.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7061BEDEE2D0021812E /* KRAudioSource.h in Headers */ = {isa = PBXBuildFile; fileRef = E48B68141697794F00D99917 /* KRAudioSource.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7071BEDEE2D0021812E /* KRAmbientZone.h in Headers */ = {isa = PBXBuildFile; fileRef = E4943230169E08D200BCB891 /* KRAmbientZone.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7081BEDEE2D0021812E /* KRReverbZone.h in Headers */ = {isa = PBXBuildFile; fileRef = E450273816E0491D00FDEC5C /* KRReverbZone.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7091BEDEE2D0021812E /* KRCamera.h in Headers */ = {isa = PBXBuildFile; fileRef = E48B3CBC14393DF5000C50E2 /* KRCamera.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D70A1BEDEE2D0021812E /* KRParticleSystem.h in Headers */ = {isa = PBXBuildFile; fileRef = E4324BA316444C0D0043185B /* KRParticleSystem.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D70B1BEDEE2D0021812E /* KRParticleSystemNewtonian.h in Headers */ = {isa = PBXBuildFile; fileRef = E4324BAA16444DEF0043185B /* KRParticleSystemNewtonian.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D70C1BEDEE2D0021812E /* KRModel.h in Headers */ = {isa = PBXBuildFile; fileRef = E414BAE11435557300A668C4 /* KRModel.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D70D1BEDEE2D0021812E /* KRLight.h in Headers */ = {isa = PBXBuildFile; fileRef = E461A151152E54B500F2044A /* KRLight.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D70E1BEDEE2D0021812E /* KRPointLight.h in Headers */ = {isa = PBXBuildFile; fileRef = E461A157152E555400F2044A /* KRPointLight.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D70F1BEDEE2D0021812E /* KRDirectionalLight.h in Headers */ = {isa = PBXBuildFile; fileRef = E461A15B152E563000F2044A /* KRDirectionalLight.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7101BEDEE2D0021812E /* KRSpotLight.h in Headers */ = {isa = PBXBuildFile; fileRef = E461A167152E570500F2044A /* KRSpotLight.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7111BEDEE2D0021812E /* KRNode.h in Headers */ = {isa = PBXBuildFile; fileRef = E4F975311536220900FD60B2 /* KRNode.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7121BEDEE2D0021812E /* KRBone.h in Headers */ = {isa = PBXBuildFile; fileRef = E480BE671671C641004EC8AD /* KRBone.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7131BEDEE2D0021812E /* KRLODGroup.h in Headers */ = {isa = PBXBuildFile; fileRef = E4AE635C1704FB0A00B460CD /* KRLODGroup.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7141BEDEE2D0021812E /* KRLocator.h in Headers */ = {isa = PBXBuildFile; fileRef = E468447E17FFDF51001F1FA1 /* KRLocator.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7151BEDEE2D0021812E /* KRLODSet.h in Headers */ = {isa = PBXBuildFile; fileRef = E43F70DB181B20E400136169 /* KRLODSet.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7161BEDEE2D0021812E /* KRSprite.h in Headers */ = {isa = PBXBuildFile; fileRef = E40F9831184A7BAC00CFA4D8 /* KRSprite.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7171BEDEE2D0021812E /* KRMat4.h in Headers */ = {isa = PBXBuildFile; fileRef = E491017613C99BDC0098455B /* KRMat4.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7181BEDEE2D0021812E /* KRVector3.h in Headers */ = {isa = PBXBuildFile; fileRef = E491017E13C99BDC0098455B /* KRVector3.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7191BEDEE2D0021812E /* KRVector2.h in Headers */ = {isa = PBXBuildFile; fileRef = E497B943151BA93400D3DC67 /* KRVector2.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D71A1BEDEE2D0021812E /* KRQuaternion.h in Headers */ = {isa = PBXBuildFile; fileRef = E42CB1EB158446940066E0D8 /* KRQuaternion.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D71B1BEDEE2D0021812E /* KRAABB.h in Headers */ = {isa = PBXBuildFile; fileRef = E40BA45315EFF79500D7C3DD /* KRAABB.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D71C1BEDEE2D0021812E /* KRVector4.h in Headers */ = {isa = PBXBuildFile; fileRef = E4EC73C01720B1FF0065299F /* KRVector4.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D71D1BEDEE2D0021812E /* KRFloat.h in Headers */ = {isa = PBXBuildFile; fileRef = E48CF941173453990005EBBB /* KRFloat.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D71E1BEDEE2D0021812E /* KRTriangle3.h in Headers */ = {isa = PBXBuildFile; fileRef = E4F89BB318A6DB1200015637 /* KRTriangle3.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D71F1BEDEE2D0021812E /* KRResource.h in Headers */ = {isa = PBXBuildFile; fileRef = E497B949151BCEE900D3DC67 /* KRResource.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7201BEDEE2D0021812E /* KRBehavior.h in Headers */ = {isa = PBXBuildFile; fileRef = E45134B51746A4A300443C21 /* KRBehavior.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7211BEDEE2D0021812E /* KRContext.h in Headers */ = {isa = PBXBuildFile; fileRef = E48C696E15374F5A00232E28 /* KRContext.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7221BEDEE2D0021812E /* KRContextObject.h in Headers */ = {isa = PBXBuildFile; fileRef = E43B0AD515DDCA0D00A5CB9F /* KRContextObject.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7231BEDEE2D0021812E /* KRDataBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = E46F4A0A155E002100CCF8B8 /* KRDataBlock.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7241BEDEE2D0021812E /* KREngine-common.h in Headers */ = {isa = PBXBuildFile; fileRef = E46DBE841512B9E200D59F86 /* KREngine-common.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7251BEDEE2D0021812E /* KREngine.h in Headers */ = {isa = PBXBuildFile; fileRef = E491017213C99BDC0098455B /* KREngine.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7261BEDEE2D0021812E /* KRHitInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = E4C454B7167BD235003586CD /* KRHitInfo.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7271BEDEE2D0021812E /* KROctree.h in Headers */ = {isa = PBXBuildFile; fileRef = E4924C2515EE95E800B965C6 /* KROctree.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7281BEDEE2D0021812E /* KROctreeNode.h in Headers */ = {isa = PBXBuildFile; fileRef = E4924C2A15EE96AA00B965C6 /* KROctreeNode.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D7291BEDEE2D0021812E /* KRRenderSettings.h in Headers */ = {isa = PBXBuildFile; fileRef = E44F38231683B22C00399B5D /* KRRenderSettings.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D72A1BEDEE2D0021812E /* KRStockGeometry.h in Headers */ = {isa = PBXBuildFile; fileRef = E4030E4B160A3CF000592648 /* KRStockGeometry.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D72B1BEDEE2D0021812E /* KRStreamer.h in Headers */ = {isa = PBXBuildFile; fileRef = E43F70E41824D9AB00136169 /* KRStreamer.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D72C1BEDEE2D0021812E /* KRViewport.h in Headers */ = {isa = PBXBuildFile; fileRef = E4CA11731639CBD1005D9400 /* KRViewport.h */; settings = {ATTRIBUTES = (Public, ); }; }; + E423D72E1BEDEE2D0021812E /* kraken_standard_assets_ios.bundle in Resources */ = {isa = PBXBuildFile; fileRef = E4C8E4E416B9B2D50031DDCB /* kraken_standard_assets_ios.bundle */; }; + E423D7361BEDEFBF0021812E /* info.plist in Resources */ = {isa = PBXBuildFile; fileRef = E423D7351BEDEFBF0021812E /* info.plist */; }; + E423D73B1BEDF0560021812E /* kraken.h in Headers */ = {isa = PBXBuildFile; fileRef = E423D7391BEDF0500021812E /* kraken.h */; }; E428C2F31669610500A16EDF /* KRAnimationManager.h in Headers */ = {isa = PBXBuildFile; fileRef = E428C2F11669610500A16EDF /* KRAnimationManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; E428C2F61669611600A16EDF /* KRAnimationManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E428C2F41669611600A16EDF /* KRAnimationManager.cpp */; }; E428C2F91669612500A16EDF /* KRAnimation.h in Headers */ = {isa = PBXBuildFile; fileRef = E428C2F71669612500A16EDF /* KRAnimation.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -283,6 +443,8 @@ E499BF2216AE760F007FCDBE /* kraken.h in Headers */ = {isa = PBXBuildFile; fileRef = E4BBBB8C1512A40300F43B5B /* kraken.h */; settings = {ATTRIBUTES = (Public, ); }; }; E499BF2316AE7636007FCDBE /* kraken-prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = E4BBBB8B1512A40300F43B5B /* kraken-prefix.pch */; }; E499BF2516AE8C20007FCDBE /* KREngine.mm in Sources */ = {isa = PBXBuildFile; fileRef = E491016F13C99BDC0098455B /* KREngine.mm */; }; + E4A0B8201B2007130059018B /* flare_osx.vsh in Resources */ = {isa = PBXBuildFile; fileRef = E42559B0184DD48B0081BB20 /* flare_osx.vsh */; }; + E4A0B8211B2007160059018B /* flare_osx.fsh in Resources */ = {isa = PBXBuildFile; fileRef = E42559AE184DD4730081BB20 /* flare_osx.fsh */; }; E4AE635E1704FB0A00B460CD /* KRLODGroup.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4AE635B1704FB0A00B460CD /* KRLODGroup.cpp */; }; E4AE63601704FB0A00B460CD /* KRLODGroup.h in Headers */ = {isa = PBXBuildFile; fileRef = E4AE635C1704FB0A00B460CD /* KRLODGroup.h */; settings = {ATTRIBUTES = (Public, ); }; }; E4AFC6B615F7C46800DDB4C8 /* KRAABB.cpp in Headers */ = {isa = PBXBuildFile; fileRef = E40BA45215EFF79500D7C3DD /* KRAABB.cpp */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -297,6 +459,8 @@ E4B175B5161F5FAF00B8FB80 /* KRTextureCube.h in Headers */ = {isa = PBXBuildFile; fileRef = E4B175B1161F5FAF00B8FB80 /* KRTextureCube.h */; settings = {ATTRIBUTES = (Public, ); }; }; E4B2A4391523B027004CB0EC /* KRMaterial.h in Headers */ = {isa = PBXBuildFile; fileRef = E491017D13C99BDC0098455B /* KRMaterial.h */; settings = {ATTRIBUTES = (Public, ); }; }; E4B2A43B1523B02E004CB0EC /* KRMaterial.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E491017C13C99BDC0098455B /* KRMaterial.cpp */; }; + E4B74A621AD79F9600067A78 /* KRContext_osx.mm in Sources */ = {isa = PBXBuildFile; fileRef = E4B74A611AD79F9600067A78 /* KRContext_osx.mm */; }; + E4B74A641AD7A02C00067A78 /* KRContext_ios.mm in Sources */ = {isa = PBXBuildFile; fileRef = E4B74A631AD7A02C00067A78 /* KRContext_ios.mm */; }; E4BBBB8A1512A40300F43B5B /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = E4BBBB881512A40300F43B5B /* InfoPlist.strings */; }; E4BBBB8E1512A40300F43B5B /* kraken.mm in Sources */ = {isa = PBXBuildFile; fileRef = E4BBBB8D1512A40300F43B5B /* kraken.mm */; }; E4BBBB9C1512A4A900F43B5B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E4BBBB9A1512A48200F43B5B /* Foundation.framework */; }; @@ -393,7 +557,7 @@ E4F027E11697BFFF00D4427D /* KRAudioBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = E4F027DD1697BFFF00D4427D /* KRAudioBuffer.h */; settings = {ATTRIBUTES = (Public, ); }; }; E4F027F71698115600D4427D /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E4F027F61698115600D4427D /* AudioToolbox.framework */; }; E4F89BB518A6DB1200015637 /* KRTriangle3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4F89BB218A6DB1200015637 /* KRTriangle3.cpp */; }; - E4F89BB718A6DB1200015637 /* KRTriangle3.h in Headers */ = {isa = PBXBuildFile; fileRef = E4F89BB318A6DB1200015637 /* KRTriangle3.h */; }; + E4F89BB718A6DB1200015637 /* KRTriangle3.h in Headers */ = {isa = PBXBuildFile; fileRef = E4F89BB318A6DB1200015637 /* KRTriangle3.h */; settings = {ATTRIBUTES = (Public, ); }; }; E4F975331536220900FD60B2 /* KRNode.h in Headers */ = {isa = PBXBuildFile; fileRef = E4F975311536220900FD60B2 /* KRNode.h */; settings = {ATTRIBUTES = (Public, ); }; }; E4F975371536221C00FD60B2 /* KRNode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4F975351536221C00FD60B2 /* KRNode.cpp */; }; E4F9754015362CD400FD60B2 /* KRScene.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E414BAE81435585A00A668C4 /* KRScene.cpp */; }; @@ -415,6 +579,13 @@ /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ + E423D68E1BEDEE2D0021812E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = E491015813C99B9D0098455B /* Project object */; + proxyType = 1; + remoteGlobalIDString = E4C8E4E316B9B2D50031DDCB; + remoteInfo = "Kraken Standard Assets - iOS"; + }; E445244D19C580C7006BB64C /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = E491015813C99B9D0098455B /* Project object */; @@ -456,9 +627,16 @@ E41AE1DD16B124CA00980428 /* font.tga */ = {isa = PBXFileReference; lastKnownFileType = file; path = font.tga; sourceTree = ""; }; E41B6BA716BE436100B510EB /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = System/Library/Frameworks/CoreAudio.framework; sourceTree = SDKROOT; }; E41B6BA916BE437800B510EB /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/CoreAudio.framework; sourceTree = DEVELOPER_DIR; }; + E41CAB8B1B75D8DF00F3387D /* KrakenView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KrakenView.h; sourceTree = ""; }; + E41CAB8C1B75D8DF00F3387D /* KrakenView.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = KrakenView.mm; sourceTree = ""; }; + E41CAB911B75DFF100F3387D /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/System/Library/Frameworks/QuartzCore.framework; sourceTree = DEVELOPER_DIR; }; + E423D7321BEDEE2D0021812E /* kraken.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = kraken.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + E423D7351BEDEFBF0021812E /* info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = info.plist; sourceTree = ""; }; + E423D7371BEDF0310021812E /* Kraken-Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "Kraken-Prefix.pch"; sourceTree = ""; }; + E423D7391BEDF0500021812E /* kraken.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = kraken.h; sourceTree = ""; }; E42559AA184DD4490081BB20 /* flare.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = flare.fsh; sourceTree = ""; }; E42559AC184DD45A0081BB20 /* flare.vsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = flare.vsh; sourceTree = ""; }; - E42559AE184DD4730081BB20 /* flare_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = flare_osx.fsh; sourceTree = ""; }; + E42559AE184DD4730081BB20 /* flare_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; lineEnding = 0; path = flare_osx.fsh; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.glsl; }; E42559B0184DD48B0081BB20 /* flare_osx.vsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = flare_osx.vsh; sourceTree = ""; }; E428C2F11669610500A16EDF /* KRAnimationManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KRAnimationManager.h; sourceTree = ""; }; E428C2F41669611600A16EDF /* KRAnimationManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = KRAnimationManager.cpp; sourceTree = ""; }; @@ -594,6 +772,8 @@ E4B175AB161F5A1000B8FB80 /* KRTexture.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; path = KRTexture.h; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; }; E4B175B0161F5FAE00B8FB80 /* KRTextureCube.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = KRTextureCube.cpp; sourceTree = ""; }; E4B175B1161F5FAF00B8FB80 /* KRTextureCube.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KRTextureCube.h; sourceTree = ""; }; + E4B74A611AD79F9600067A78 /* KRContext_osx.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = KRContext_osx.mm; sourceTree = ""; }; + E4B74A631AD7A02C00067A78 /* KRContext_ios.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = KRContext_ios.mm; sourceTree = ""; }; E4BBBB7E1512A40300F43B5B /* kraken.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = kraken.framework; sourceTree = BUILT_PRODUCTS_DIR; }; E4BBBB871512A40300F43B5B /* Kraken-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Kraken-Info.plist"; sourceTree = ""; }; E4BBBB891512A40300F43B5B /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; @@ -623,24 +803,24 @@ E4CA11731639CBD1005D9400 /* KRViewport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KRViewport.h; sourceTree = ""; }; E4CA11771639CC8E005D9400 /* KRViewport.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = KRViewport.cpp; sourceTree = ""; }; E4CE184815FEEDA200F80870 /* font.pvr */ = {isa = PBXFileReference; lastKnownFileType = file; path = font.pvr; sourceTree = ""; }; - E4E6F60D16BA5D8300E410F8 /* PostShader_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = PostShader_osx.fsh; sourceTree = ""; }; + E4E6F60D16BA5D8300E410F8 /* PostShader_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; lineEnding = 0; path = PostShader_osx.fsh; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.glsl; }; E4E6F60E16BA5D8300E410F8 /* PostShader_osx.vsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = PostShader_osx.vsh; sourceTree = ""; }; - E4E6F60F16BA5D8300E410F8 /* sky_box_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = sky_box_osx.fsh; sourceTree = ""; }; - E4E6F61016BA5D8300E410F8 /* debug_font_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = debug_font_osx.fsh; sourceTree = ""; }; + E4E6F60F16BA5D8300E410F8 /* sky_box_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; lineEnding = 0; path = sky_box_osx.fsh; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.glsl; }; + E4E6F61016BA5D8300E410F8 /* debug_font_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; lineEnding = 0; path = debug_font_osx.fsh; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.glsl; }; E4E6F61116BA5D8300E410F8 /* debug_font_osx.vsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = debug_font_osx.vsh; sourceTree = ""; }; E4E6F61216BA5D8300E410F8 /* dust_particle_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = dust_particle_osx.fsh; sourceTree = ""; }; E4E6F61316BA5D8300E410F8 /* dust_particle_osx.vsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = dust_particle_osx.vsh; sourceTree = ""; }; - E4E6F61416BA5D8300E410F8 /* sprite_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = sprite_osx.fsh; sourceTree = ""; }; + E4E6F61416BA5D8300E410F8 /* sprite_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; lineEnding = 0; path = sprite_osx.fsh; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.glsl; }; E4E6F61516BA5D8300E410F8 /* sprite_osx.vsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = sprite_osx.vsh; sourceTree = ""; }; - E4E6F61616BA5D8300E410F8 /* light_directional_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = light_directional_osx.fsh; sourceTree = ""; }; + E4E6F61616BA5D8300E410F8 /* light_directional_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; lineEnding = 0; path = light_directional_osx.fsh; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.glsl; }; E4E6F61716BA5D8300E410F8 /* light_directional_osx.vsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = light_directional_osx.vsh; sourceTree = ""; }; - E4E6F61816BA5D8300E410F8 /* light_point_inside_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = light_point_inside_osx.fsh; sourceTree = ""; }; + E4E6F61816BA5D8300E410F8 /* light_point_inside_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; lineEnding = 0; path = light_point_inside_osx.fsh; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.glsl; }; E4E6F61916BA5D8300E410F8 /* light_point_inside_osx.vsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = light_point_inside_osx.vsh; sourceTree = ""; }; - E4E6F61A16BA5D8300E410F8 /* light_point_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = light_point_osx.fsh; sourceTree = ""; }; + E4E6F61A16BA5D8300E410F8 /* light_point_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; lineEnding = 0; path = light_point_osx.fsh; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.glsl; }; E4E6F61B16BA5D8300E410F8 /* light_point_osx.vsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = light_point_osx.vsh; sourceTree = ""; }; - E4E6F61C16BA5D8300E410F8 /* ObjectShader_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = ObjectShader_osx.fsh; sourceTree = ""; }; + E4E6F61C16BA5D8300E410F8 /* ObjectShader_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; lineEnding = 0; path = ObjectShader_osx.fsh; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.glsl; }; E4E6F61D16BA5D8300E410F8 /* ObjectShader_osx.vsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = ObjectShader_osx.vsh; sourceTree = ""; }; - E4E6F61E16BA5D8300E410F8 /* occlusion_test_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = occlusion_test_osx.fsh; sourceTree = ""; }; + E4E6F61E16BA5D8300E410F8 /* occlusion_test_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; lineEnding = 0; path = occlusion_test_osx.fsh; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.glsl; }; E4E6F61F16BA5D8300E410F8 /* occlusion_test_osx.vsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = occlusion_test_osx.vsh; sourceTree = ""; }; E4E6F62016BA5D8300E410F8 /* ShadowShader_osx.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = ShadowShader_osx.fsh; sourceTree = ""; }; E4E6F62116BA5D8300E410F8 /* ShadowShader_osx.vsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = ShadowShader_osx.vsh; sourceTree = ""; }; @@ -702,6 +882,19 @@ /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ + E423D6DA1BEDEE2D0021812E /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + E423D6DB1BEDEE2D0021812E /* Foundation.framework in Frameworks */, + E423D6DC1BEDEE2D0021812E /* OpenGLES.framework in Frameworks */, + E423D6DD1BEDEE2D0021812E /* Accelerate.framework in Frameworks */, + E423D6DE1BEDEE2D0021812E /* OpenAL.framework in Frameworks */, + E423D6DF1BEDEE2D0021812E /* AudioToolbox.framework in Frameworks */, + E423D6E01BEDEE2D0021812E /* CoreAudio.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; E48C527619C570C50062E439 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; @@ -719,6 +912,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + E41CAB921B75DFF100F3387D /* QuartzCore.framework in Frameworks */, E45E03C018790DF5006DA23F /* libPVRTexLib.a in Frameworks */, E459040416C30CC5002B00A0 /* AudioUnit.framework in Frameworks */, E41B6BAA16BE437800B510EB /* CoreAudio.framework in Frameworks */, @@ -814,6 +1008,24 @@ path = Shaders; sourceTree = ""; }; + E423D7341BEDEF100021812E /* kraken_tvos */ = { + isa = PBXGroup; + children = ( + E423D73E1BEDF1630021812E /* Frameworks */, + E423D7391BEDF0500021812E /* kraken.h */, + E423D7371BEDF0310021812E /* Kraken-Prefix.pch */, + E423D7351BEDEFBF0021812E /* info.plist */, + ); + path = kraken_tvos; + sourceTree = ""; + }; + E423D73E1BEDF1630021812E /* Frameworks */ = { + isa = PBXGroup; + children = ( + ); + name = Frameworks; + sourceTree = ""; + }; E428C2EF166960ED00A16EDF /* Animation */ = { isa = PBXGroup; children = ( @@ -1155,6 +1367,7 @@ E491016613C99B9E0098455B /* kraken */, E4C8E50C16B9B5ED0031DDCB /* kraken_ios */, E4BBBB851512A40300F43B5B /* kraken_osx */, + E423D7341BEDEF100021812E /* kraken_tvos */, E4C8E4E616B9B2D50031DDCB /* kraken_standard_assets_ios */, E4C8E4F616B9B2E20031DDCB /* kraken_standard_assets_osx */, E48C528519C570C50062E439 /* krakenTests */, @@ -1169,6 +1382,7 @@ E4C8E4E416B9B2D50031DDCB /* kraken_standard_assets_ios.bundle */, E4C8E4F416B9B2E20031DDCB /* kraken_standard_assets_osx.bundle */, E48C527A19C570C50062E439 /* kraken.framework */, + E423D7321BEDEE2D0021812E /* kraken.framework */, ); name = Products; sourceTree = ""; @@ -1182,6 +1396,8 @@ E45134B41746A4A300443C21 /* KRBehavior.cpp */, E45134B51746A4A300443C21 /* KRBehavior.h */, E48C697115374F7E00232E28 /* KRContext.cpp */, + E4B74A631AD7A02C00067A78 /* KRContext_ios.mm */, + E4B74A611AD79F9600067A78 /* KRContext_osx.mm */, E48C696E15374F5A00232E28 /* KRContext.h */, E43B0AD415DDCA0C00A5CB9F /* KRContextObject.cpp */, E43B0AD515DDCA0D00A5CB9F /* KRContextObject.h */, @@ -1212,6 +1428,8 @@ children = ( E4BBBB8C1512A40300F43B5B /* kraken.h */, E4BBBB8D1512A40300F43B5B /* kraken.mm */, + E41CAB8B1B75D8DF00F3387D /* KrakenView.h */, + E41CAB8C1B75D8DF00F3387D /* KrakenView.mm */, E4BBBB861512A40300F43B5B /* Supporting Files */, E4BBBB931512A41500F43B5B /* Frameworks */, ); @@ -1231,6 +1449,7 @@ E4BBBB931512A41500F43B5B /* Frameworks */ = { isa = PBXGroup; children = ( + E41CAB911B75DFF100F3387D /* QuartzCore.framework */, E459040316C30CC5002B00A0 /* AudioUnit.framework */, E41B6BA916BE437800B510EB /* CoreAudio.framework */, E460292916682BD900261BB9 /* libfbxsdk.a */, @@ -1335,6 +1554,88 @@ /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ + E423D6E11BEDEE2D0021812E /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + E423D6E31BEDEE2D0021812E /* tinyxml2.h in Headers */, + E423D6E41BEDEE2D0021812E /* forsyth.h in Headers */, + E423D6E51BEDEE2D0021812E /* KRAudioManager.h in Headers */, + E423D6E61BEDEE2D0021812E /* KRAudioSample.h in Headers */, + E423D6E71BEDEE2D0021812E /* KRAudioBuffer.h in Headers */, + E423D6E81BEDEE2D0021812E /* KRUnknownManager.h in Headers */, + E423D6E91BEDEE2D0021812E /* KRUnknown.h in Headers */, + E423D6EA1BEDEE2D0021812E /* KRAnimationCurve.h in Headers */, + E423D6EB1BEDEE2D0021812E /* KRAnimationCurveManager.h in Headers */, + E423D6EC1BEDEE2D0021812E /* KRAnimationLayer.h in Headers */, + E423D6ED1BEDEE2D0021812E /* KRAnimationManager.h in Headers */, + E423D6EE1BEDEE2D0021812E /* KRAnimation.h in Headers */, + E423D6EF1BEDEE2D0021812E /* KRAnimationAttribute.h in Headers */, + E423D6F01BEDEE2D0021812E /* KRBundleManager.h in Headers */, + E423D6F11BEDEE2D0021812E /* KRBundle.h in Headers */, + E423D6F21BEDEE2D0021812E /* KRMaterialManager.h in Headers */, + E423D6F31BEDEE2D0021812E /* KRMaterial.h in Headers */, + E423D6F41BEDEE2D0021812E /* KRMeshManager.h in Headers */, + E423D6F51BEDEE2D0021812E /* KRMesh.h in Headers */, + E423D6F61BEDEE2D0021812E /* KRMeshCube.h in Headers */, + E423D6F71BEDEE2D0021812E /* KRMeshSphere.h in Headers */, + E423D6F81BEDEE2D0021812E /* KRMeshQuad.h in Headers */, + E423D6F91BEDEE2D0021812E /* KRTextureManager.h in Headers */, + E423D6FA1BEDEE2D0021812E /* KRTexture2D.h in Headers */, + E423D6FB1BEDEE2D0021812E /* KRTexture.h in Headers */, + E423D6FC1BEDEE2D0021812E /* KRTextureCube.h in Headers */, + E423D6FD1BEDEE2D0021812E /* KRTexturePVR.h in Headers */, + E423D6FE1BEDEE2D0021812E /* KRTextureTGA.h in Headers */, + E423D6FF1BEDEE2D0021812E /* KRTextureAnimated.h in Headers */, + E423D7001BEDEE2D0021812E /* KRTextureKTX.h in Headers */, + E423D7011BEDEE2D0021812E /* KRShaderManager.h in Headers */, + E423D7021BEDEE2D0021812E /* KRShader.h in Headers */, + E423D7031BEDEE2D0021812E /* KRSceneManager.h in Headers */, + E423D7041BEDEE2D0021812E /* KRScene.h in Headers */, + E423D7051BEDEE2D0021812E /* KRCollider.h in Headers */, + E423D7061BEDEE2D0021812E /* KRAudioSource.h in Headers */, + E423D7071BEDEE2D0021812E /* KRAmbientZone.h in Headers */, + E423D7081BEDEE2D0021812E /* KRReverbZone.h in Headers */, + E423D7091BEDEE2D0021812E /* KRCamera.h in Headers */, + E423D70A1BEDEE2D0021812E /* KRParticleSystem.h in Headers */, + E423D70B1BEDEE2D0021812E /* KRParticleSystemNewtonian.h in Headers */, + E423D70C1BEDEE2D0021812E /* KRModel.h in Headers */, + E423D70D1BEDEE2D0021812E /* KRLight.h in Headers */, + E423D70E1BEDEE2D0021812E /* KRPointLight.h in Headers */, + E423D70F1BEDEE2D0021812E /* KRDirectionalLight.h in Headers */, + E423D73B1BEDF0560021812E /* kraken.h in Headers */, + E423D7101BEDEE2D0021812E /* KRSpotLight.h in Headers */, + E423D7111BEDEE2D0021812E /* KRNode.h in Headers */, + E423D7121BEDEE2D0021812E /* KRBone.h in Headers */, + E423D7131BEDEE2D0021812E /* KRLODGroup.h in Headers */, + E423D7141BEDEE2D0021812E /* KRLocator.h in Headers */, + E423D7151BEDEE2D0021812E /* KRLODSet.h in Headers */, + E423D7161BEDEE2D0021812E /* KRSprite.h in Headers */, + E423D7171BEDEE2D0021812E /* KRMat4.h in Headers */, + E423D7181BEDEE2D0021812E /* KRVector3.h in Headers */, + E423D7191BEDEE2D0021812E /* KRVector2.h in Headers */, + E423D71A1BEDEE2D0021812E /* KRQuaternion.h in Headers */, + E423D71B1BEDEE2D0021812E /* KRAABB.h in Headers */, + E423D71C1BEDEE2D0021812E /* KRVector4.h in Headers */, + E423D71D1BEDEE2D0021812E /* KRFloat.h in Headers */, + E423D71E1BEDEE2D0021812E /* KRTriangle3.h in Headers */, + E423D71F1BEDEE2D0021812E /* KRResource.h in Headers */, + E423D7201BEDEE2D0021812E /* KRBehavior.h in Headers */, + E423D7211BEDEE2D0021812E /* KRContext.h in Headers */, + E423D7221BEDEE2D0021812E /* KRContextObject.h in Headers */, + E423D7231BEDEE2D0021812E /* KRDataBlock.h in Headers */, + E423D7241BEDEE2D0021812E /* KREngine-common.h in Headers */, + E423D7251BEDEE2D0021812E /* KREngine.h in Headers */, + E423D7261BEDEE2D0021812E /* KRHitInfo.h in Headers */, + E423D7271BEDEE2D0021812E /* KROctree.h in Headers */, + E423D7281BEDEE2D0021812E /* KROctreeNode.h in Headers */, + E423D7291BEDEE2D0021812E /* KRRenderSettings.h in Headers */, + E423D72A1BEDEE2D0021812E /* KRStockGeometry.h in Headers */, + E423D72B1BEDEE2D0021812E /* KRStreamer.h in Headers */, + E423D72C1BEDEE2D0021812E /* KRViewport.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; E48C527719C570C50062E439 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; @@ -1478,7 +1779,6 @@ E4F027CA16979CCD00D4427D /* KRAudioManager.h in Headers */, E4F027D116979CE200D4427D /* KRAudioSample.h in Headers */, E4F027E11697BFFF00D4427D /* KRAudioBuffer.h in Headers */, - E4F89BB718A6DB1200015637 /* KRTriangle3.h in Headers */, E4943234169E08D200BCB891 /* KRAmbientZone.h in Headers */, E414F9AF1694DA37000B3D58 /* KRUnknown.h in Headers */, E45E03BD18790DD1006DA23F /* PVRTTexture.h in Headers */, @@ -1508,7 +1808,9 @@ E4AE63601704FB0A00B460CD /* KRLODGroup.h in Headers */, E45134B91746A4A300443C21 /* KRBehavior.h in Headers */, E43F70E81824D9AB00136169 /* KRStreamer.h in Headers */, + E4F89BB718A6DB1200015637 /* KRTriangle3.h in Headers */, E40F982F184A7A2700CFA4D8 /* KRMeshQuad.h in Headers */, + E41CAB8D1B75D8DF00F3387D /* KrakenView.h in Headers */, E40F9835184A7BAC00CFA4D8 /* KRSprite.h in Headers */, E48CF945173453990005EBBB /* KRFloat.h in Headers */, E499BF1F16AE753E007FCDBE /* KRCollider.h in Headers */, @@ -1519,6 +1821,25 @@ /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ + E423D68C1BEDEE2D0021812E /* kraken - tvos */ = { + isa = PBXNativeTarget; + buildConfigurationList = E423D72F1BEDEE2D0021812E /* Build configuration list for PBXNativeTarget "kraken - tvos" */; + buildPhases = ( + E423D68F1BEDEE2D0021812E /* Sources */, + E423D6DA1BEDEE2D0021812E /* Frameworks */, + E423D6E11BEDEE2D0021812E /* Headers */, + E423D72D1BEDEE2D0021812E /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + E423D68D1BEDEE2D0021812E /* PBXTargetDependency */, + ); + name = "kraken - tvos"; + productName = kraken; + productReference = E423D7321BEDEE2D0021812E /* kraken.framework */; + productType = "com.apple.product-type.framework"; + }; E48C527919C570C50062E439 /* kraken - ios */ = { isa = PBXNativeTarget; buildConfigurationList = E48C528E19C570C60062E439 /* Build configuration list for PBXNativeTarget "kraken - ios" */; @@ -1619,6 +1940,7 @@ targets = ( E4BBBB7D1512A40300F43B5B /* Kraken - osx */, E48C527919C570C50062E439 /* kraken - ios */, + E423D68C1BEDEE2D0021812E /* kraken - tvos */, E4C8E4E316B9B2D50031DDCB /* Kraken Standard Assets - iOS */, E4C8E4F316B9B2E20031DDCB /* Kraken Standard Assets - OSX */, ); @@ -1626,6 +1948,14 @@ /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ + E423D72D1BEDEE2D0021812E /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + E423D72E1BEDEE2D0021812E /* kraken_standard_assets_ios.bundle in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; E48C527819C570C50062E439 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; @@ -1640,6 +1970,7 @@ files = ( E445244F19C580D3006BB64C /* kraken_standard_assets_osx.bundle in Resources */, E4BBBB8A1512A40300F43B5B /* InfoPlist.strings in Resources */, + E423D7361BEDEFBF0021812E /* info.plist in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1695,6 +2026,7 @@ E4E6F6A616BA5E0A00E410F8 /* debug_font_osx.fsh in Resources */, E4E6F6A716BA5E0A00E410F8 /* debug_font_osx.vsh in Resources */, E4E6F6A816BA5E0A00E410F8 /* dust_particle_osx.fsh in Resources */, + E4A0B8201B2007130059018B /* flare_osx.vsh in Resources */, E4E6F6A916BA5E0A00E410F8 /* dust_particle_osx.vsh in Resources */, E4E6F6AA16BA5E0A00E410F8 /* sprite_osx.fsh in Resources */, E4E6F6AB16BA5E0A00E410F8 /* sprite_osx.vsh in Resources */, @@ -1714,6 +2046,7 @@ E4E6F6B916BA5E0A00E410F8 /* simple_blit_osx.vsh in Resources */, E4E6F6BA16BA5E0A00E410F8 /* sky_box_osx.vsh in Resources */, E4E6F6BB16BA5E0A00E410F8 /* visualize_overlay_osx.fsh in Resources */, + E4A0B8211B2007160059018B /* flare_osx.fsh in Resources */, E4E6F6BC16BA5E0A00E410F8 /* visualize_overlay_osx.vsh in Resources */, E4E6F6BD16BA5E0A00E410F8 /* volumetric_fog_downsampled_osx.fsh in Resources */, E4E6F6BE16BA5E0A00E410F8 /* volumetric_fog_downsampled_osx.vsh in Resources */, @@ -1726,6 +2059,87 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ + E423D68F1BEDEE2D0021812E /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + E423D6901BEDEE2D0021812E /* tinyxml2.cpp in Sources */, + E423D6911BEDEE2D0021812E /* forsyth.cpp in Sources */, + E423D6921BEDEE2D0021812E /* KRAudioManager.cpp in Sources */, + E423D6931BEDEE2D0021812E /* KRAudioSample.cpp in Sources */, + E423D6941BEDEE2D0021812E /* KRAudioBuffer.cpp in Sources */, + E423D6951BEDEE2D0021812E /* KRUnknownManager.cpp in Sources */, + E423D6961BEDEE2D0021812E /* KRUnknown.cpp in Sources */, + E423D6971BEDEE2D0021812E /* KRAnimationCurve.cpp in Sources */, + E423D6981BEDEE2D0021812E /* KRAnimationCurveManager.cpp in Sources */, + E423D6991BEDEE2D0021812E /* KRAnimationLayer.cpp in Sources */, + E423D69A1BEDEE2D0021812E /* KRAnimationManager.cpp in Sources */, + E423D69B1BEDEE2D0021812E /* KRAnimation.cpp in Sources */, + E423D69C1BEDEE2D0021812E /* KRAnimationAttribute.cpp in Sources */, + E423D69D1BEDEE2D0021812E /* KRBundleManager.cpp in Sources */, + E423D69E1BEDEE2D0021812E /* KRBundle.cpp in Sources */, + E423D69F1BEDEE2D0021812E /* KRMaterialManager.cpp in Sources */, + E423D6A01BEDEE2D0021812E /* KRMaterial.cpp in Sources */, + E423D6A11BEDEE2D0021812E /* KRMeshManager.cpp in Sources */, + E423D6A21BEDEE2D0021812E /* KRMesh.cpp in Sources */, + E423D6A31BEDEE2D0021812E /* KRMeshCube.cpp in Sources */, + E423D6A41BEDEE2D0021812E /* KRMeshSphere.cpp in Sources */, + E423D6A51BEDEE2D0021812E /* KRMeshQuad.cpp in Sources */, + E423D6A61BEDEE2D0021812E /* KRTextureManager.cpp in Sources */, + E423D6A71BEDEE2D0021812E /* KRTexture2D.cpp in Sources */, + E423D6A81BEDEE2D0021812E /* KRContext_ios.mm in Sources */, + E423D6A91BEDEE2D0021812E /* KRTexture.cpp in Sources */, + E423D6AA1BEDEE2D0021812E /* KRTextureCube.cpp in Sources */, + E423D6AB1BEDEE2D0021812E /* KRTexturePVR.cpp in Sources */, + E423D6AC1BEDEE2D0021812E /* KRTextureTGA.cpp in Sources */, + E423D6AD1BEDEE2D0021812E /* KRTextureAnimated.cpp in Sources */, + E423D6AE1BEDEE2D0021812E /* KRTextureKTX.cpp in Sources */, + E423D6AF1BEDEE2D0021812E /* KRShaderManager.cpp in Sources */, + E423D6B01BEDEE2D0021812E /* KRShader.cpp in Sources */, + E423D6B11BEDEE2D0021812E /* KRSceneManager.cpp in Sources */, + E423D6B21BEDEE2D0021812E /* KRScene.cpp in Sources */, + E423D6B31BEDEE2D0021812E /* KRCollider.cpp in Sources */, + E423D6B41BEDEE2D0021812E /* KRAudioSource.cpp in Sources */, + E423D6B51BEDEE2D0021812E /* KRAmbientZone.cpp in Sources */, + E423D6B61BEDEE2D0021812E /* KRReverbZone.cpp in Sources */, + E423D6B71BEDEE2D0021812E /* KRCamera.cpp in Sources */, + E423D6B81BEDEE2D0021812E /* KRParticleSystem.cpp in Sources */, + E423D6B91BEDEE2D0021812E /* KRParticleSystemNewtonian.cpp in Sources */, + E423D6BA1BEDEE2D0021812E /* KRModel.cpp in Sources */, + E423D6BB1BEDEE2D0021812E /* KRLight.cpp in Sources */, + E423D6BC1BEDEE2D0021812E /* KRPointLight.cpp in Sources */, + E423D6BD1BEDEE2D0021812E /* KRDirectionalLight.cpp in Sources */, + E423D6BE1BEDEE2D0021812E /* KRSpotLight.cpp in Sources */, + E423D6BF1BEDEE2D0021812E /* KRNode.cpp in Sources */, + E423D6C01BEDEE2D0021812E /* KRBone.cpp in Sources */, + E423D6C11BEDEE2D0021812E /* KRLODGroup.cpp in Sources */, + E423D6C21BEDEE2D0021812E /* KRLocator.cpp in Sources */, + E423D6C31BEDEE2D0021812E /* KRLODSet.cpp in Sources */, + E423D6C41BEDEE2D0021812E /* KRSprite.cpp in Sources */, + E423D6C51BEDEE2D0021812E /* KRMat4.cpp in Sources */, + E423D6C61BEDEE2D0021812E /* KRVector3.cpp in Sources */, + E423D6C71BEDEE2D0021812E /* KRVector2.cpp in Sources */, + E423D6C81BEDEE2D0021812E /* KRQuaternion.cpp in Sources */, + E423D6C91BEDEE2D0021812E /* KRAABB.cpp in Sources */, + E423D6CA1BEDEE2D0021812E /* KRVector4.cpp in Sources */, + E423D6CB1BEDEE2D0021812E /* KRFloat.cpp in Sources */, + E423D6CC1BEDEE2D0021812E /* KRTriangle3.cpp in Sources */, + E423D6CD1BEDEE2D0021812E /* KRResource.cpp in Sources */, + E423D6CE1BEDEE2D0021812E /* KRResource+obj.cpp in Sources */, + E423D6CF1BEDEE2D0021812E /* KRBehavior.cpp in Sources */, + E423D6D01BEDEE2D0021812E /* KRContext.cpp in Sources */, + E423D6D11BEDEE2D0021812E /* KRContextObject.cpp in Sources */, + E423D6D21BEDEE2D0021812E /* KRDataBlock.cpp in Sources */, + E423D6D31BEDEE2D0021812E /* KREngine.mm in Sources */, + E423D6D41BEDEE2D0021812E /* KRHitInfo.cpp in Sources */, + E423D6D51BEDEE2D0021812E /* KROctree.cpp in Sources */, + E423D6D61BEDEE2D0021812E /* KROctreeNode.cpp in Sources */, + E423D6D71BEDEE2D0021812E /* KRRenderSettings.cpp in Sources */, + E423D6D81BEDEE2D0021812E /* KRStreamer.mm in Sources */, + E423D6D91BEDEE2D0021812E /* KRViewport.cpp in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; E48C527519C570C50062E439 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -1754,6 +2168,7 @@ E4159BA319C5762F00622D1E /* KRMeshQuad.cpp in Sources */, E4159BA419C5762F00622D1E /* KRTextureManager.cpp in Sources */, E4159BA519C5762F00622D1E /* KRTexture2D.cpp in Sources */, + E4B74A641AD7A02C00067A78 /* KRContext_ios.mm in Sources */, E4159BA619C5762F00622D1E /* KRTexture.cpp in Sources */, E4159BA719C5762F00622D1E /* KRTextureCube.cpp in Sources */, E4159BA819C5762F00622D1E /* KRTexturePVR.cpp in Sources */, @@ -1840,6 +2255,7 @@ E4D13364153767ED0070068C /* KRShaderManager.cpp in Sources */, E4AFC6B915F7C7B200DDB4C8 /* KROctree.cpp in Sources */, E46C214C15364DEC009CABF3 /* KRSceneManager.cpp in Sources */, + E4B74A621AD79F9600067A78 /* KRContext_osx.mm in Sources */, E48C697315374F7E00232E28 /* KRContext.cpp in Sources */, E46A6B6D1559E97D000DBD37 /* KRResource+blend.cpp in Sources */, E40F982D184A7A2700CFA4D8 /* KRMeshQuad.cpp in Sources */, @@ -1857,6 +2273,7 @@ E4CA10EA1637BD2B005D9400 /* KRTexturePVR.cpp in Sources */, E4CA10F01637BD58005D9400 /* KRTextureTGA.cpp in Sources */, E4F89BB518A6DB1200015637 /* KRTriangle3.cpp in Sources */, + E41CAB8E1B75D8DF00F3387D /* KrakenView.mm in Sources */, E4CA11791639CC90005D9400 /* KRViewport.cpp in Sources */, E41843921678704000DBD6CF /* KRCollider.cpp in Sources */, E4324BAF16444E120043185B /* KRParticleSystemNewtonian.cpp in Sources */, @@ -1906,6 +2323,11 @@ /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ + E423D68D1BEDEE2D0021812E /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = E4C8E4E316B9B2D50031DDCB /* Kraken Standard Assets - iOS */; + targetProxy = E423D68E1BEDEE2D0021812E /* PBXContainerItemProxy */; + }; E445244E19C580C7006BB64C /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = E4C8E4E316B9B2D50031DDCB /* Kraken Standard Assets - iOS */; @@ -1930,6 +2352,96 @@ /* End PBXVariantGroup section */ /* Begin XCBuildConfiguration section */ + E423D7301BEDEE2D0021812E /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ENABLE_MODULES = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_DYNAMIC_NO_PIC = NO; + GCC_PREFIX_HEADER = "kraken_tvos/Kraken-Prefix.pch"; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + INFOPLIST_FILE = kraken_tvos/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 7.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LIBRARY_SEARCH_PATHS = "\"$(SYSTEM_APPS_DIR)/Autodesk/FBX SDK/2014.2/lib/ios-armv7/debug\""; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = NO; + PRODUCT_NAME = kraken; + TARGETED_DEVICE_FAMILY = "1,2"; + TVOS_DEPLOYMENT_TARGET = 9.1; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + E423D7311BEDEE2D0021812E /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ENABLE_MODULES = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_PREFIX_HEADER = "kraken_tvos/Kraken-Prefix.pch"; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + INFOPLIST_FILE = kraken_tvos/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 7.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LIBRARY_SEARCH_PATHS = "\"$(SYSTEM_APPS_DIR)/Autodesk/FBX SDK/2014.2/lib/ios-armv7/release\""; + MTL_ENABLE_DEBUG_INFO = NO; + ONLY_ACTIVE_ARCH = NO; + PRODUCT_NAME = kraken; + TARGETED_DEVICE_FAMILY = "1,2"; + TVOS_DEPLOYMENT_TARGET = 9.1; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; E48C528A19C570C50062E439 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -1971,6 +2483,7 @@ ONLY_ACTIVE_ARCH = NO; PRODUCT_NAME = kraken; TARGETED_DEVICE_FAMILY = "1,2"; + TVOS_DEPLOYMENT_TARGET = 9.1; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; @@ -2012,6 +2525,7 @@ ONLY_ACTIVE_ARCH = NO; PRODUCT_NAME = kraken; TARGETED_DEVICE_FAMILY = "1,2"; + TVOS_DEPLOYMENT_TARGET = 9.1; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; @@ -2036,7 +2550,7 @@ LLVM_VECTORIZE_LOOPS = YES; MACOSX_DEPLOYMENT_TARGET = 10.6; ONLY_ACTIVE_ARCH = NO; - SDKROOT = iphoneos; + SDKROOT = appletvos; SKIP_INSTALL = YES; }; name = Debug; @@ -2057,7 +2571,7 @@ LLVM_VECTORIZE_LOOPS = YES; MACOSX_DEPLOYMENT_TARGET = 10.6; ONLY_ACTIVE_ARCH = NO; - SDKROOT = iphoneos; + SDKROOT = appletvos; SKIP_INSTALL = YES; }; name = Release; @@ -2283,6 +2797,15 @@ /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ + E423D72F1BEDEE2D0021812E /* Build configuration list for PBXNativeTarget "kraken - tvos" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + E423D7301BEDEE2D0021812E /* Debug */, + E423D7311BEDEE2D0021812E /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; E48C528E19C570C60062E439 /* Build configuration list for PBXNativeTarget "kraken - ios" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/kraken/KRCamera.cpp b/kraken/KRCamera.cpp index 32c4bc1..08075c3 100644 --- a/kraken/KRCamera.cpp +++ b/kraken/KRCamera.cpp @@ -105,7 +105,7 @@ void KRCamera::renderFrame(float deltaTime, GLint renderBufferWidth, GLint rende } m_last_frame_start = current_time; - GLint defaultFBO; + GLint defaultFBO = -1; GLDEBUG(glGetIntegerv(GL_FRAMEBUFFER_BINDING, &defaultFBO)); createBuffers(renderBufferWidth, renderBufferHeight); diff --git a/kraken/KRContext.cpp b/kraken/KRContext.cpp index c1d6eb2..dfb0bd3 100644 --- a/kraken/KRContext.cpp +++ b/kraken/KRContext.cpp @@ -18,6 +18,19 @@ int KRContext::KRENGINE_MAX_TEXTURE_DIM; int KRContext::KRENGINE_MIN_TEXTURE_DIM; int KRContext::KRENGINE_PRESTREAM_DISTANCE; +#if TARGET_OS_IPHONE + + +#elif TARGET_OS_MAC + + +#else + +#error Unsupported Platform + +#endif + + const char *KRContext::extension_names[KRENGINE_NUM_EXTENSIONS] = { "GL_EXT_texture_storage" }; @@ -48,7 +61,7 @@ KRContext::KRContext() : m_streamer(*this) m_pUnknownManager = new KRUnknownManager(*this); m_streamingEnabled = true; - + createDeviceContexts(); } KRContext::~KRContext() { @@ -103,6 +116,8 @@ KRContext::~KRContext() { delete m_pBundleManager; m_pBundleManager = NULL; } + + destroyDeviceContexts(); } void KRContext::SetLogCallback(log_callback *log_callback, void *user_data) diff --git a/kraken/KRContext.h b/kraken/KRContext.h index 5bb49d9..73770fb 100644 --- a/kraken/KRContext.h +++ b/kraken/KRContext.h @@ -87,6 +87,13 @@ public: void doStreaming(); void receivedMemoryWarning(); + + static void activateStreamerContext(); + static void activateRenderContext(); + +#if TARGET_OS_MAC + static void attachToView(void *view); +#endif private: KRBundleManager *m_pBundleManager; @@ -117,6 +124,9 @@ private: static void *s_log_callback_user_data; KRStreamer m_streamer; + + static void createDeviceContexts(); + void destroyDeviceContexts(); }; #endif diff --git a/kraken/KRContext_ios.mm b/kraken/KRContext_ios.mm new file mode 100644 index 0000000..7a58a0a --- /dev/null +++ b/kraken/KRContext_ios.mm @@ -0,0 +1,40 @@ +// +// KRContext-ios.mm +// Kraken +// +// Created by Kearwood Gilbert on 11/1/2013. +// Copyright (c) 2013 Kearwood Software. All rights reserved. +// + +#include "KREngine-common.h" + +#include "KRContext.h" + +EAGLContext *gStreamerContext = nil; +EAGLContext *gRenderContext = nil; + +void KRContext::destroyDeviceContexts() +{ + [gStreamerContext release]; + [gRenderContext release]; +} + +void KRContext::createDeviceContexts() +{ + gRenderContext = [[EAGLContext alloc] initWithAPI:kEAGLRenderingAPIOpenGLES2]; + gStreamerContext = [[EAGLContext alloc] initWithAPI:kEAGLRenderingAPIOpenGLES2 sharegroup: gStreamerContext.sharegroup]; + + // FIXME: need to add code check for iOS 7 and also this appears to cause crashing + + //gTextureStreamerContext.multiThreaded = TRUE; +} + +void KRContext::activateStreamerContext() +{ + [EAGLContext setCurrentContext: gStreamerContext]; +} + +void KRContext::activateRenderContext() +{ + [EAGLContext setCurrentContext: gRenderContext]; +} diff --git a/kraken/KRContext_osx.mm b/kraken/KRContext_osx.mm new file mode 100644 index 0000000..80baebe --- /dev/null +++ b/kraken/KRContext_osx.mm @@ -0,0 +1,82 @@ +// +// KRContext-osx.mm +// Kraken +// +// Created by Kearwood Gilbert on 11/1/2013. +// Copyright (c) 2013 Kearwood Software. All rights reserved. +// + +#include "KREngine-common.h" + +#include "KRContext.h" + +NSOpenGLContext *gStreamerContext = nil; +NSOpenGLContext *gRenderContext = nil; + +void KRContext::destroyDeviceContexts() +{ + [gStreamerContext release]; + [gRenderContext release]; +} + +void KRContext::createDeviceContexts() +{ + if(gRenderContext == nil) { + + /* + NSOpenGLPixelFormatAttribute attribs[] = + { + NSOpenGLPFADoubleBuffer, + NSOpenGLPFADepthSize, 32, + NSOpenGLPFAOpenGLProfile, NSOpenGLProfileVersion3_2Core, + 0 + }; + */ + NSOpenGLPixelFormatAttribute attribs[] = { + NSOpenGLPFADoubleBuffer, + NSOpenGLPFAAccelerated, + NSOpenGLPFAColorSize, 24, + NSOpenGLPFAAlphaSize, 8, + NSOpenGLPFADepthSize, 24, + NSOpenGLPFAOpenGLProfile, NSOpenGLProfileVersion3_2Core, + 0 + }; + NSOpenGLPixelFormat *pixelFormat = [[[NSOpenGLPixelFormat alloc] initWithAttributes:attribs] autorelease]; + gRenderContext = [[NSOpenGLContext alloc] initWithFormat: pixelFormat shareContext: nil ]; + gStreamerContext = [[NSOpenGLContext alloc] initWithFormat: pixelFormat shareContext: gRenderContext ]; + + // set synch to VBL to eliminate tearing + GLint vblSynch = 1; + [gRenderContext setValues:&vblSynch forParameter:NSOpenGLCPSwapInterval]; + +/* + CGLEnable([gRenderContext CGLContextObj], kCGLCESurfaceBackingSize); + + const GLint dim[2] = {1920, 1080}; + + [gRenderContext setValues: &dim[0] forParameter: NSOpenGLCPSurfaceBackingSize]; + [gRenderContext update]; +*/ + } +} + +void KRContext::activateStreamerContext() +{ + createDeviceContexts(); + [gStreamerContext makeCurrentContext]; +} + +void KRContext::activateRenderContext() +{ + createDeviceContexts(); + [gRenderContext update]; + [gRenderContext makeCurrentContext]; +} + +void KRContext::attachToView(void *view) +{ + createDeviceContexts(); + NSView *v = (NSView *)view; + [gRenderContext setView: v]; + [gRenderContext update]; +} \ No newline at end of file diff --git a/kraken/KREngine-common.h b/kraken/KREngine-common.h index c02b537..ac8b720 100644 --- a/kraken/KREngine-common.h +++ b/kraken/KREngine-common.h @@ -107,6 +107,16 @@ using std::hash; #define GL_ANY_SAMPLES_PASSED_EXT GL_ANY_SAMPLES_PASSED #define GL_QUERY_RESULT_EXT GL_QUERY_RESULT +#define GL_OES_mapbuffer 1 +#define glMapBufferOES glMapBuffer +#define glUnmapBufferOES glUnmapBuffer +#define GL_WRITE_ONLY_OES GL_WRITE_ONLY + +#define GL_OES_vertex_array_object 1 +#define glGenVertexArraysOES glGenVertexArrays +#define glBindVertexArrayOES glBindVertexArray +#define glDeleteVertexArraysOES glDeleteVertexArrays + #endif #include diff --git a/kraken/KRShader.cpp b/kraken/KRShader.cpp index 1ee4ad9..47941aa 100644 --- a/kraken/KRShader.cpp +++ b/kraken/KRShader.cpp @@ -558,7 +558,7 @@ bool KRShader::bind(KRCamera &camera, const KRViewport &viewport, const KRMat4 & setUniform(KRENGINE_UNIFORM_VOLUMETRIC_ENVIRONMENT_FRAME, 2); #if DEBUG - if(shander_changed) { + if(shander_changed) { // FINDME!! KIP!! HACK!! GLint logLength; GLint validate_status = GL_FALSE; diff --git a/kraken/KRShaderManager.cpp b/kraken/KRShaderManager.cpp index ae11e88..9431a35 100644 --- a/kraken/KRShaderManager.cpp +++ b/kraken/KRShaderManager.cpp @@ -145,7 +145,7 @@ KRShader *KRShaderManager::getShader(const std::string &shader_name, KRCamera *p #if TARGET_OS_IPHONE #else - stream << "\n#version 120"; + stream << "\n#version 150"; stream << "\n#define lowp"; stream << "\n#define mediump"; stream << "\n#define highp"; diff --git a/kraken/KRStreamer.mm b/kraken/KRStreamer.mm index b8c6f03..dc287a6 100644 --- a/kraken/KRStreamer.mm +++ b/kraken/KRStreamer.mm @@ -14,19 +14,6 @@ #include -#if TARGET_OS_IPHONE - -EAGLContext *gTextureStreamerContext = nil; - -#elif TARGET_OS_MAC - -NSOpenGLContext *gTextureStreamerContext = nil; - -#else - -#error Unsupported Platform -#endif - KRStreamer::KRStreamer(KRContext &context) : m_context(context) { m_running = false; @@ -37,29 +24,7 @@ void KRStreamer::startStreamer() { if(!m_running) { m_running = true; - -#if TARGET_OS_IPHONE - - gTextureStreamerContext = [[EAGLContext alloc] initWithAPI:kEAGLRenderingAPIOpenGLES2 sharegroup: [EAGLContext currentContext].sharegroup]; - // FIXME: need to add code check for iOS 7 and also this appears to cause crashing - - //gTextureStreamerContext.multiThreaded = TRUE; - - -#elif TARGET_OS_MAC - - NSOpenGLPixelFormatAttribute pixelFormatAttributes[] = - { -// NSOpenGLPFAOpenGLProfile, NSOpenGLProfileVersionLegacy, - 0 - }; - NSOpenGLPixelFormat *pixelFormat = [[[NSOpenGLPixelFormat alloc] initWithAttributes:pixelFormatAttributes] autorelease]; - gTextureStreamerContext = [[NSOpenGLContext alloc] initWithFormat: pixelFormat shareContext: [NSOpenGLContext currentContext] ]; - -#else - - #error Unsupported Platform -#endif + KRContext::activateStreamerContext(); m_thread = std::thread(&KRStreamer::run, this); } @@ -72,8 +37,6 @@ KRStreamer::~KRStreamer() m_thread.join(); m_running = false; } - - [gTextureStreamerContext release]; } void KRStreamer::run() @@ -82,13 +45,7 @@ void KRStreamer::run() std::chrono::microseconds sleep_duration( 15000 ); -#if TARGET_OS_IPHONE - [EAGLContext setCurrentContext: gTextureStreamerContext]; -#elif TARGET_OS_MAC - [gTextureStreamerContext makeCurrentContext]; -#else -#error Unsupported Platform -#endif + KRContext::activateStreamerContext(); while(!m_stop) { diff --git a/kraken_osx/KrakenView.h b/kraken_osx/KrakenView.h new file mode 100644 index 0000000..e041c1b --- /dev/null +++ b/kraken_osx/KrakenView.h @@ -0,0 +1,16 @@ +// +// KrakenView.h +// Kraken +// +// Created by Kearwood Gilbert on 2015-08-07. +// Copyright © 2015 Kearwood Software. All rights reserved. +// + +#import + +class KRCamera; + +@interface KrakenView : NSView +@property (nonatomic, assign) KRCamera *camera; +- (void)drawFrameWithDeltaTime: (float)deltaTime; +@end diff --git a/kraken_osx/KrakenView.mm b/kraken_osx/KrakenView.mm new file mode 100644 index 0000000..4e3166a --- /dev/null +++ b/kraken_osx/KrakenView.mm @@ -0,0 +1,186 @@ +// +// KrakenView.m +// Kraken +// +// Created by Kearwood Gilbert on 2015-08-07. +// Copyright © 2015 Kearwood Software. All rights reserved. +// + +#import "KrakenView.h" +#include "KREngine-common.h" + +#include "KREngine.h" + +#import +#import + +@interface KrakenView() { + CVDisplayLinkRef displayLink; +}; + +- (void)getFrameForTime:(const CVTimeStamp *)outputTime; +- (void)drawFrameWithDeltaTime: (float)deltaTime; + +@end + +@implementation KrakenView + +- (void)dealloc +{ + CVDisplayLinkRelease(displayLink); + + [super dealloc]; +} + + +- (void)drawFrameWithDeltaTime: (float)deltaTime +{ + + if(_camera) { + KRContext::activateRenderContext(); + NSOpenGLContext *currentContext = [NSOpenGLContext currentContext]; + + // must lock GL context because display link is threaded + CGLLockContext((CGLContextObj)[currentContext CGLContextObj]); + + GLint hasDrawable = 0; + [currentContext getValues: &hasDrawable forParameter:NSOpenGLCPHasDrawable]; + + if(!hasDrawable) { + KRContext::attachToView(self); + const GLint dim[2] = {1920, 1080}; + + [currentContext setValues: &dim[0] forParameter: NSOpenGLCPSurfaceBackingSize]; + [currentContext update]; + } + + GLint backingDim[2] = {0, 0}; + [currentContext getValues: &backingDim[0] forParameter:NSOpenGLCPSurfaceBackingSize]; + + GLint rendererID = 0; + [currentContext getValues: &rendererID forParameter:NSOpenGLCPCurrentRendererID]; + + + GLint renderBufferWidth = 0, renderBufferHeight = 0; +// GLDEBUG(glGetRenderbufferParameteriv(GL_RENDERBUFFER, GL_RENDERBUFFER_WIDTH, &renderBufferWidth)); +// GLDEBUG(glGetRenderbufferParameteriv(GL_RENDERBUFFER, GL_RENDERBUFFER_HEIGHT, &renderBufferHeight)); + + renderBufferWidth = 1920; + renderBufferHeight = 1080; + + glViewport(0, 0, renderBufferWidth, renderBufferHeight); + GLDEBUG(glClearColor(0.0f, 0.0f, 0.0f, 0.0f)); + GLDEBUG(glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT)); + + + [[KREngine sharedInstance] renderScene: &_camera->getScene() WithDeltaTime:deltaTime AndWidth:renderBufferWidth AndHeight:renderBufferHeight]; + //[[KREngine sharedInstance] renderScene: &_camera->getScene() WithDeltaTime:deltaTime]; + + [currentContext flushBuffer]; + + CGLUnlockContext((CGLContextObj)[currentContext CGLContextObj]); + } +} + +- (void)viewDidMoveToSuperview +{ +// KRContext::attachToView(self); + + // set up the display link + CVDisplayLinkCreateWithActiveCGDisplays(&displayLink); + CVDisplayLinkSetOutputCallback(displayLink, MyDisplayLinkCallback, self); + /* + CGLContextObj cglContext = (CGLContextObj)[context CGLContextObj]; + CGLPixelFormatObj cglPixelFormat = (CGLPixelFormatObj)[[context.pixelFormat] CGLPixelFormatObj]; + CVDisplayLinkSetCurrentCGDisplayFromOpenGLContext(displayLink, cglContext, cglPixelFormat); + */ + + // ----====---- activate the display link ----====---- + CVDisplayLinkStart(displayLink); +} + +static CVReturn MyDisplayLinkCallback(CVDisplayLinkRef displayLink, const CVTimeStamp *now, + const CVTimeStamp *outputTime, CVOptionFlags flagsIn, + CVOptionFlags *flagsOut, void *displayLinkContext) +{ + // go back to Obj-C for easy access to instance variables + [(KrakenView *)displayLinkContext getFrameForTime:outputTime]; + return kCVReturnSuccess; +} + +- (void)getFrameForTime:(const CVTimeStamp *)outputTime +{ + // deltaTime is unused in this bare bones demo, but here's how to calculate it using display link info + float deltaTime = 1.0 / (outputTime->rateScalar * (double)outputTime->videoTimeScale / (double)outputTime->videoRefreshPeriod); + + [self drawFrameWithDeltaTime: deltaTime]; +} + +/* + - (id)initWithCoder:(NSCoder *)aDecoder + { + self = [super initWithCoder:aDecoder]; + if (self == nil) + { + NSLog(@"Unable to create a windowed OpenGL context."); + exit(0); + } + + [self commonInit]; + + return self; + + } + + - (id)initWithFrame:(NSRect)frameRect + { + // context setup + NSOpenGLPixelFormat *windowedPixelFormat; + NSOpenGLPixelFormatAttribute attribs[] = { + NSOpenGLPFAWindow, + NSOpenGLPFAColorSize, 32, + NSOpenGLPFADepthSize, 24, + NSOpenGLPFAAccelerated, + NSOpenGLPFADoubleBuffer, + NSOpenGLPFASingleRenderer, + 0 }; + + windowedPixelFormat = [[NSOpenGLPixelFormat alloc] initWithAttributes:attribs]; + if (windowedPixelFormat == nil) + { + NSLog(@"Unable to create windowed pixel format."); + exit(0); + } + self = [super initWithFrame:frameRect pixelFormat:windowedPixelFormat]; + if (self == nil) + { + NSLog(@"Unable to create a windowed OpenGL context."); + exit(0); + } + [windowedPixelFormat release]; + + [self commonInit]; + + return self; + } + + - (void)reshape + { + NSSize viewBounds = [self bounds].size; + viewWidth = viewBounds.width; + viewHeight = viewBounds.height; + + NSOpenGLContext *currentContext = [self openGLContext]; + [currentContext makeCurrentContext]; + + // remember to lock the context before we touch it since display link is threaded + CGLLockContext((CGLContextObj)[currentContext CGLContextObj]); + + // let the context know we've changed size + [[self openGLContext] update]; + + CGLUnlockContext((CGLContextObj)[currentContext CGLContextObj]); + } + */ + +@end diff --git a/kraken_standard_assets_ios/Shaders/occlusion_test.fsh b/kraken_standard_assets_ios/Shaders/occlusion_test.fsh index 5beec00..682a212 100644 --- a/kraken_standard_assets_ios/Shaders/occlusion_test.fsh +++ b/kraken_standard_assets_ios/Shaders/occlusion_test.fsh @@ -30,6 +30,5 @@ // void main() { - //gl_FragColor = vec4(0.00, 0.00, 0.00, 0.00); - gl_FragColor = vec4(0.00, 0.00, 0.00, 0.00); + gl_FragColor = vec4(0.0, 0.0, 0.0, 0.0); } diff --git a/kraken_standard_assets_osx/Shaders/ObjectShader_osx.fsh b/kraken_standard_assets_osx/Shaders/ObjectShader_osx.fsh index 1a18867..52952e3 100644 --- a/kraken_standard_assets_osx/Shaders/ObjectShader_osx.fsh +++ b/kraken_standard_assets_osx/Shaders/ObjectShader_osx.fsh @@ -27,6 +27,8 @@ //#extension GL_EXT_shadow_samplers : require +out vec4 colorOut; + #if ENABLE_RIM_COLOR == 1 uniform lowp vec3 rim_color; uniform mediump float rim_power; @@ -61,20 +63,20 @@ #if HAS_NORMAL_MAP == 1 uniform sampler2D normalTexture; #else - varying mediump vec3 normal; + in mediump vec3 normal; #endif #if HAS_DIFFUSE_MAP == 1 || HAS_NORMAL_MAP == 1 || HAS_SPEC_MAP == 1 || HAS_REFLECTION_MAP == 1 - varying highp vec2 texCoord; + in highp vec2 texCoord; #endif #if HAS_NORMAL_MAP_OFFSET == 1 || HAS_NORMAL_MAP_SCALE == 1 - varying highp vec2 normal_uv; + in highp vec2 normal_uv; #else #define normal_uv texCoord #endif #else #if HAS_DIFFUSE_MAP == 1 - varying highp vec2 texCoord; + in highp vec2 texCoord; #endif #endif @@ -86,7 +88,7 @@ #if GBUFFER_PASS == 1 #if HAS_NORMAL_MAP == 1 - varying highp mat3 tangent_to_view_matrix; + in highp mat3 tangent_to_view_matrix; #else uniform highp mat4 model_view_inverse_transpose_matrix; #endif @@ -94,7 +96,7 @@ #if HAS_DIFFUSE_MAP == 1 && ALPHA_TEST == 1 uniform sampler2D diffuseTexture; #if HAS_DIFFUSE_MAP_OFFSET == 1 || HAS_DIFFUSE_MAP_SCALE == 1 - varying highp vec2 diffuse_uv; + in highp vec2 diffuse_uv; #else #define diffuse_uv texCoord #endif @@ -124,17 +126,17 @@ uniform lowp vec3 material_reflection; uniform samplerCube reflectionCubeTexture; #if HAS_NORMAL_MAP == 1 - varying highp mat3 tangent_to_world_matrix; + in highp mat3 tangent_to_world_matrix; #define NEED_EYEVEC uniform highp mat4 model_matrix; #else - varying mediump vec3 reflectionVec; + in mediump vec3 reflectionVec; #endif #endif #ifdef NEED_EYEVEC - varying mediump vec3 eyeVec; + in mediump vec3 eyeVec; #endif @@ -144,46 +146,46 @@ #else uniform sampler2D shadowTexture1; #endif - varying highp vec4 shadowMapCoord1; + in highp vec4 shadowMapCoord1; #endif #if HAS_LIGHT_MAP == 1 uniform sampler2D lightmapTexture; - varying mediump vec2 lightmap_uv; + in mediump vec2 lightmap_uv; #endif #if SHADOW_QUALITY >= 2 uniform sampler2D shadowTexture2; - varying highp vec4 shadowMapCoord2; + in highp vec4 shadowMapCoord2; #endif #if SHADOW_QUALITY >= 3 uniform sampler2D shadowTexture3; - varying highp vec4 shadowMapCoord3; + in highp vec4 shadowMapCoord3; #endif #if ENABLE_PER_PIXEL == 1 - varying mediump vec3 lightVec; - varying mediump vec3 halfVec; + in mediump vec3 lightVec; + in mediump vec3 halfVec; #else - varying mediump float lamberFactor; - varying mediump float specularFactor; + in mediump float lamberFactor; + in mediump float specularFactor; #endif #if (HAS_SPEC_MAP_OFFSET == 1|| HAS_SPEC_MAP_SCALE == 1) && ENABLE_PER_PIXEL == 1 - varying mediump vec2 spec_uv; + in mediump vec2 spec_uv; #else #define spec_uv texCoord #endif #if (HAS_REFLECTION_MAP_OFFSET == 1|| HAS_REFLECTION_MAP_SCALE == 1) && ENABLE_PER_PIXEL == 1 - varying mediump vec2 reflection_uv; + in mediump vec2 reflection_uv; #else #define reflection_uv texCoord #endif #if HAS_DIFFUSE_MAP_OFFSET == 1 || HAS_DIFFUSE_MAP_SCALE == 1 - varying highp vec2 diffuse_uv; + in highp vec2 diffuse_uv; #else #define diffuse_uv texCoord #endif @@ -197,12 +199,12 @@ void main() { #if ALPHA_TEST == 1 && HAS_DIFFUSE_MAP == 1 - mediump vec4 diffuseMaterial = texture2D(diffuseTexture, diffuse_uv); + mediump vec4 diffuseMaterial = texture(diffuseTexture, diffuse_uv); if(diffuseMaterial.a < 0.5) discard; #endif #if GBUFFER_PASS == 1 && ALPHA_TEST == 1 - if(texture2D(diffuseTexture, diffuse_uv).a < 0.5) discard; + if(texture(diffuseTexture, diffuse_uv).a < 0.5) discard; #endif #if GBUFFER_PASS == 2 || GBUFFER_PASS == 3 @@ -210,7 +212,7 @@ void main() #endif #if GBUFFER_PASS == 3 - lowp vec4 gbuffer_sample = texture2D(gbuffer_frame, gbuffer_uv); + lowp vec4 gbuffer_sample = texture(gbuffer_frame, gbuffer_uv); mediump vec3 gbuffer_lamber_factor = gbuffer_sample.rgb * 5.0; lowp float gbuffer_specular_factor = gbuffer_sample.a; #endif @@ -218,18 +220,18 @@ void main() #if GBUFFER_PASS == 1 #if HAS_NORMAL_MAP == 1 // lookup normal from normal map, move from [0,1] to [-1, 1] range, normalize - mediump vec3 normal = normalize(2.0 * texture2D(normalTexture,normal_uv).rgb - 1.0); + mediump vec3 normal = normalize(2.0 * texture(normalTexture,normal_uv).rgb - 1.0); mediump vec3 view_space_normal = tangent_to_view_matrix * normal; #else mediump vec3 view_space_normal = vec3(model_view_inverse_transpose_matrix * vec4(normal, 1.0)); #endif - gl_FragColor = vec4(view_space_normal * 0.5 + 0.5, material_shininess / 100.0); + colorOut = vec4(view_space_normal * 0.5 + 0.5, material_shininess / 100.0); #else #if HAS_DIFFUSE_MAP == 1 #if ALPHA_TEST == 1 diffuseMaterial.a = 1.0; #else - mediump vec4 diffuseMaterial = texture2D(diffuseTexture, diffuse_uv); + mediump vec4 diffuseMaterial = texture(diffuseTexture, diffuse_uv); #endif #else @@ -239,7 +241,7 @@ void main() #if ENABLE_PER_PIXEL == 1 #if HAS_NORMAL_MAP == 1 // lookup normal from normal map, move from [0,1] to [-1, 1] range, normalize - mediump vec3 normal = normalize(2.0 * texture2D(normalTexture,normal_uv).rgb - 1.0); + mediump vec3 normal = normalize(2.0 * texture(normalTexture,normal_uv).rgb - 1.0); #endif #if GBUFFER_PASS == 3 @@ -277,7 +279,7 @@ void main() #if DEBUG_PSSM == 1 diffuseMaterial = diffuseMaterial * vec4(0.75, 0.75, 0.5, 1.0) + vec4(0.0, 0.0, 0.5, 0.0); #endif - shadowMapDepth = texture2D(shadowTexture1, shadowMapPos).z; + shadowMapDepth = texture(shadowTexture1, shadowMapPos).z; vertexShadowDepth = (shadowMapCoord1 / shadowMapCoord1.w).z; } #endif @@ -292,14 +294,14 @@ void main() diffuseMaterial = diffuseMaterial * vec4(0.75, 0.75, 0.5, 1.0) + vec4(0.0, 0.0, 0.5 * diffuseMaterial.a, 0.0); #endif highp vec2 shadowMapPos = (shadowMapCoord1 / shadowMapCoord1.w).st; - shadowMapDepth = texture2D(shadowTexture1, shadowMapPos).z; + shadowMapDepth = texture(shadowTexture1, shadowMapPos).z; vertexShadowDepth = (shadowMapCoord1 / shadowMapCoord1.w).z; } else if(shadowMapCoord2.s >= -1.0 && shadowMapCoord2.s <= 1.0 && shadowMapCoord2.t >= -1.0 && shadowMapCoord2.t <= 1.0 && shadowMapCoord2.z >= 0.0 && shadowMapCoord2.z <= 1.0) { #if DEBUG_PSSM == 1 diffuseMaterial = diffuseMaterial * vec4(0.75, 0.50, 0.75, 1.0) + vec4(0.0, 0.5 * diffuseMaterial.a, 0.0, 0.0); #endif highp vec2 shadowMapPos = (shadowMapCoord2 / shadowMapCoord2.w).st; - shadowMapDepth = texture2D(shadowTexture2, shadowMapPos).z; + shadowMapDepth = texture(shadowTexture2, shadowMapPos).z; vertexShadowDepth = (shadowMapCoord2 / shadowMapCoord2.w).z; } #if SHADOW_QUALITY >= 3 @@ -308,7 +310,7 @@ void main() diffuseMaterial = diffuseMaterial * vec4(0.50, 0.75, 0.75, 1.0) + vec4(0.5 * diffuseMaterial.a, 0.0, 0.0, 0.0); #endif highp vec2 shadowMapPos = (shadowMapCoord3 / shadowMapCoord3.w).st; - shadowMapDepth = texture2D(shadowTexture3, shadowMapPos).z; + shadowMapDepth = texture(shadowTexture3, shadowMapPos).z; vertexShadowDepth = (shadowMapCoord3 / shadowMapCoord3.w).z; } @@ -330,38 +332,38 @@ void main() #if ENABLE_AMBIENT == 1 // -------------------- Add ambient light and alpha component -------------------- - gl_FragColor = vec4(vec3(diffuseMaterial) * material_ambient, 0.0); + colorOut = vec4(vec3(diffuseMaterial) * material_ambient, 0.0); #else - gl_FragColor = vec4(0.0, 0.0, 0.0, 0.0); + colorOut = vec4(0.0, 0.0, 0.0, 0.0); #endif #if ENABLE_DIFFUSE == 1 // -------------------- Add diffuse light -------------------- - gl_FragColor += diffuseMaterial * vec4(material_diffuse * lamberFactor, 1.0); + colorOut += diffuseMaterial * vec4(material_diffuse * lamberFactor, 1.0); #endif // -------------------- Apply material_alpha -------------------- #if ALPHA_BLEND == 1 - gl_FragColor.a = diffuseMaterial.a; - gl_FragColor *= material_alpha; + colorOut.a = diffuseMaterial.a; + colorOut *= material_alpha; #endif // -------------------- Add specular light -------------------- // Additive, not masked against diffuse alpha #if ENABLE_SPECULAR == 1 #if HAS_SPEC_MAP == 1 && ENABLE_PER_PIXEL == 1 - gl_FragColor.rgb += material_specular * vec3(texture2D(specularTexture, spec_uv)) * specularFactor; + colorOut.rgb += material_specular * vec3(texture(specularTexture, spec_uv)) * specularFactor; #else - gl_FragColor.rgb += material_specular * specularFactor; + colorOut.rgb += material_specular * specularFactor; #endif #endif // -------------------- Multiply light map -------------------- #if HAS_LIGHT_MAP == 1 - mediump vec3 lightMapColor = vec3(texture2D(lightmapTexture, lightmap_uv)); - //gl_FragColor = vec4(gl_FragColor.r * lightMapColor.r, gl_FragColor.g * lightMapColor.g, gl_FragColor.b * lightMapColor.b, gl_FragColor.a); - gl_FragColor.rgb *= lightMapColor; + mediump vec3 lightMapColor = vec3(texture(lightmapTexture, lightmap_uv)); + //colorOut = vec4(colorOut.r * lightMapColor.r, colorOut.g * lightMapColor.g, colorOut.b * lightMapColor.b, colorOut.a); + colorOut.rgb *= lightMapColor; #endif @@ -375,9 +377,9 @@ void main() mediump vec3 reflectionVec = mat3(model_matrix) * (incidenceVec - 2.0 * dot(world_space_normal, incidenceVec) * world_space_normal); #endif #if HAS_REFLECTION_MAP == 1 - gl_FragColor += vec4(material_reflection, 0.0) * texture2D(reflectionTexture, reflection_uv) * vec4(textureCube(reflectionCubeTexture, reflectionVec).rgb, 1.0); + colorOut += vec4(material_reflection, 0.0) * texture(reflectionTexture, reflection_uv) * vec4(texture(reflectionCubeTexture, reflectionVec).rgb, 1.0); #else - gl_FragColor += vec4(material_reflection, 0.0) * vec4(textureCube(reflectionCubeTexture, reflectionVec).rgb, 1.0); + colorOut += vec4(material_reflection, 0.0) * vec4(texture(reflectionCubeTexture, reflectionVec).rgb, 1.0); #endif #endif @@ -402,9 +404,9 @@ void main() #endif #if ALPHA_BLEND == 1 - gl_FragColor.rgb = mix(fog_color.rgb * gl_FragColor.a, gl_FragColor.rgb, fog_alpha); + colorOut.rgb = mix(fog_color.rgb * colorOut.a, colorOut.rgb, fog_alpha); #else - gl_FragColor.rgb = mix(fog_color.rgb, gl_FragColor.rgb, fog_alpha); + colorOut.rgb = mix(fog_color.rgb, colorOut.rgb, fog_alpha); #endif #endif @@ -414,10 +416,10 @@ void main() #if ENABLE_RIM_COLOR == 1 lowp float rim = 1.0 - clamp(dot(normalize(eyeVec), normal), 0.0, 1.0); - gl_FragColor += vec4(rim_color, 1.0) * pow(rim, rim_power); + colorOut += vec4(rim_color, 1.0) * pow(rim, rim_power); #endif #if BONE_COUNT > 0 - gl_FragColor.b = 1.0; + colorOut.b = 1.0; #endif } diff --git a/kraken_standard_assets_osx/Shaders/ObjectShader_osx.vsh b/kraken_standard_assets_osx/Shaders/ObjectShader_osx.vsh index 904a3a4..aadb768 100644 --- a/kraken_standard_assets_osx/Shaders/ObjectShader_osx.vsh +++ b/kraken_standard_assets_osx/Shaders/ObjectShader_osx.vsh @@ -30,16 +30,16 @@ // -attribute highp vec3 vertex_position, vertex_normal; +in highp vec3 vertex_position, vertex_normal; #if HAS_NORMAL_MAP == 1 - attribute highp vec3 vertex_tangent; + in highp vec3 vertex_tangent; #endif -attribute mediump vec2 vertex_uv; +in mediump vec2 vertex_uv; uniform highp mat4 mvp_matrix; // mvp_matrix is the result of multiplying the model, view, and projection matrices #if BONE_COUNT > 0 - attribute highp vec4 bone_weights; - attribute highp vec4 bone_indexes; + in highp vec4 bone_weights; + in highp vec4 bone_indexes; uniform highp mat4 bone_transforms[BONE_COUNT]; #else #define vertex_position_skinned vertex_position @@ -51,7 +51,7 @@ uniform highp mat4 mvp_matrix; // mvp_matrix is the result of multiplying t #if ENABLE_PER_PIXEL == 1 || GBUFFER_PASS == 1 #if HAS_DIFFUSE_MAP == 1 || HAS_NORMAL_MAP == 1 || HAS_SPEC_MAP == 1 || HAS_REFLECTION_MAP == 1 - varying highp vec2 texCoord; + out highp vec2 texCoord; #endif #if HAS_NORMAL_MAP == 1 #if HAS_NORMAL_MAP_SCALE == 1 @@ -63,22 +63,22 @@ uniform highp mat4 mvp_matrix; // mvp_matrix is the result of multiplying t #endif #if HAS_NORMAL_MAP_OFFSET == 1 || HAS_NORMAL_MAP_SCALE == 1 - varying highp vec2 normal_uv; + out highp vec2 normal_uv; #endif #else - varying mediump vec3 normal; + out mediump vec3 normal; #endif #else uniform mediump float material_shininess; #if HAS_DIFFUSE_MAP == 1 - varying highp vec2 texCoord; + out highp vec2 texCoord; #endif #endif #if GBUFFER_PASS == 1 #if HAS_NORMAL_MAP == 1 uniform highp mat4 model_view_inverse_transpose_matrix; - varying highp mat3 tangent_to_view_matrix; + out highp mat3 tangent_to_view_matrix; #endif #else @@ -86,16 +86,16 @@ uniform highp mat4 mvp_matrix; // mvp_matrix is the result of multiplying t uniform highp vec3 camera_position_model_space; #if HAS_LIGHT_MAP == 1 - attribute mediump vec2 vertex_lightmap_uv; - varying mediump vec2 lightmap_uv; + in mediump vec2 vertex_lightmap_uv; + out mediump vec2 lightmap_uv; #endif #if ENABLE_PER_PIXEL == 1 - varying mediump vec3 lightVec; - varying mediump vec3 halfVec; + out mediump vec3 lightVec; + out mediump vec3 halfVec; #if HAS_SPEC_MAP_OFFSET == 1 || HAS_SPEC_MAP_SCALE == 1 - varying highp vec2 spec_uv; + out highp vec2 spec_uv; #endif #if HAS_SPEC_MAP_SCALE == 1 @@ -107,7 +107,7 @@ uniform highp mat4 mvp_matrix; // mvp_matrix is the result of multiplying t #endif #if HAS_REFLECTION_MAP_OFFSET == 1 || HAS_REFLECTION_MAP_SCALE == 1 - varying highp vec2 reflection_uv; + out highp vec2 reflection_uv; #endif #if HAS_REFLECTION_MAP_SCALE == 1 @@ -120,22 +120,22 @@ uniform highp mat4 mvp_matrix; // mvp_matrix is the result of multiplying t #if SHADOW_QUALITY >= 1 uniform highp mat4 shadow_mvp1; - varying highp vec4 shadowMapCoord1; + out highp vec4 shadowMapCoord1; #endif #if SHADOW_QUALITY >= 2 uniform highp mat4 shadow_mvp2; - varying highp vec4 shadowMapCoord2; + out highp vec4 shadowMapCoord2; #endif #if SHADOW_QUALITY >= 3 uniform highp mat4 shadow_mvp3; - varying highp vec4 shadowMapCoord3; + out highp vec4 shadowMapCoord3; #endif #else - varying mediump float lamberFactor; - varying mediump float specularFactor; + out mediump float lamberFactor; + out mediump float specularFactor; #endif #if ENABLE_RIM_COLOR == 1 @@ -146,15 +146,15 @@ uniform highp mat4 mvp_matrix; // mvp_matrix is the result of multiplying t #if HAS_NORMAL_MAP == 1 #define NEED_EYEVEC uniform highp mat4 model_inverse_transpose_matrix; - varying highp mat3 tangent_to_world_matrix; + out highp mat3 tangent_to_world_matrix; #else uniform highp mat4 model_matrix; - varying mediump vec3 reflectionVec; + out mediump vec3 reflectionVec; #endif #endif #ifdef NEED_EYEVEC - varying mediump vec3 eyeVec; + out mediump vec3 eyeVec; #endif #if HAS_DIFFUSE_MAP_SCALE == 1 @@ -166,7 +166,7 @@ uniform highp mat4 mvp_matrix; // mvp_matrix is the result of multiplying t #endif #if HAS_DIFFUSE_MAP_OFFSET == 1 || HAS_DIFFUSE_MAP_SCALE == 1 - varying highp vec2 diffuse_uv; + out highp vec2 diffuse_uv; #endif #endif diff --git a/kraken_standard_assets_osx/Shaders/PostShader_osx.fsh b/kraken_standard_assets_osx/Shaders/PostShader_osx.fsh index 34a274b..eba229c 100644 --- a/kraken_standard_assets_osx/Shaders/PostShader_osx.fsh +++ b/kraken_standard_assets_osx/Shaders/PostShader_osx.fsh @@ -31,32 +31,33 @@ #define PIXEL_SHIFT_3 0.003 #define PIXEL_SHIFT_4 0.004 -varying mediump vec2 textureCoordinate; -//precision lowp float; +in vec2 textureCoordinate; #if ENABLE_VIDEO_BG == 1 -uniform lowp sampler2D videoFrame; +uniform sampler2D videoFrame; #endif #if ENABLE_FADE_COLOR == 1 -uniform lowp vec4 fade_color; +uniform vec4 fade_color; #endif -uniform lowp sampler2D renderFrame; -uniform lowp sampler2D depthFrame; +uniform sampler2D renderFrame; +uniform sampler2D depthFrame; #if VOLUMETRIC_ENVIRONMENT_DOWNSAMPLED == 1 -uniform lowp sampler2D volumetricEnvironmentFrame; +uniform sampler2D volumetricEnvironmentFrame; #endif +out vec4 colorOut; + void main() { - lowp vec4 renderColor = texture2D(renderFrame, textureCoordinate); + vec4 renderColor = texture(renderFrame, textureCoordinate); #if DOF_QUALITY > 0 || ENABLE_FLASH == 1 - mediump float depth = texture2D(depthFrame, textureCoordinate).r; + float depth = texture(depthFrame, textureCoordinate).r; #endif - mediump vec4 pixelColor = renderColor; + vec4 pixelColor = renderColor; #if DOF_QUALITY == 2 @@ -67,43 +68,43 @@ void main() // _XXXXX_ // _XXXXX_ // __XXX__ - mediump float cf1 = PIXEL_SHIFT_1; - mediump float cf2 = PIXEL_SHIFT_2; + float cf1 = PIXEL_SHIFT_1; + float cf2 = PIXEL_SHIFT_2; - mediump float bx1 = textureCoordinate.s + cf1; - mediump float bx2 = textureCoordinate.s + cf2; - mediump float bxm1 = textureCoordinate.s - cf1; - mediump float bxm2 = textureCoordinate.s - cf2; + float bx1 = textureCoordinate.s + cf1; + float bx2 = textureCoordinate.s + cf2; + float bxm1 = textureCoordinate.s - cf1; + float bxm2 = textureCoordinate.s - cf2; - mediump float by1 = textureCoordinate.t + cf1; - mediump float by2 = textureCoordinate.t + cf2; - mediump float bym1 = textureCoordinate.t - cf1; - mediump float bym2 = textureCoordinate.t - cf2; + float by1 = textureCoordinate.t + cf1; + float by2 = textureCoordinate.t + cf2; + float bym1 = textureCoordinate.t - cf1; + float bym2 = textureCoordinate.t - cf2; - pixelColor += texture2D(renderFrame, vec2(bx1, textureCoordinate.t)); - pixelColor += texture2D(renderFrame, vec2(bxm1, textureCoordinate.t)); - pixelColor += texture2D(renderFrame, vec2(bx2, textureCoordinate.t)); - pixelColor += texture2D(renderFrame, vec2(bxm2, textureCoordinate.t)); + pixelColor += texture(renderFrame, vec2(bx1, textureCoordinate.t)); + pixelColor += texture(renderFrame, vec2(bxm1, textureCoordinate.t)); + pixelColor += texture(renderFrame, vec2(bx2, textureCoordinate.t)); + pixelColor += texture(renderFrame, vec2(bxm2, textureCoordinate.t)); - pixelColor += texture2D(renderFrame, vec2(textureCoordinate.s, by1)); - pixelColor += texture2D(renderFrame, vec2(bx1, by1)); - pixelColor += texture2D(renderFrame, vec2(bxm1, by1)); - pixelColor += texture2D(renderFrame, vec2(bx2, by1)); - pixelColor += texture2D(renderFrame, vec2(bxm2, by1)); + pixelColor += texture(renderFrame, vec2(textureCoordinate.s, by1)); + pixelColor += texture(renderFrame, vec2(bx1, by1)); + pixelColor += texture(renderFrame, vec2(bxm1, by1)); + pixelColor += texture(renderFrame, vec2(bx2, by1)); + pixelColor += texture(renderFrame, vec2(bxm2, by1)); - pixelColor += texture2D(renderFrame, vec2(textureCoordinate.s, by2)); - pixelColor += texture2D(renderFrame, vec2(bx1, by2)); - pixelColor += texture2D(renderFrame, vec2(bxm1, by2)); + pixelColor += texture(renderFrame, vec2(textureCoordinate.s, by2)); + pixelColor += texture(renderFrame, vec2(bx1, by2)); + pixelColor += texture(renderFrame, vec2(bxm1, by2)); - pixelColor += texture2D(renderFrame, vec2(textureCoordinate.s,bym1)); - pixelColor += texture2D(renderFrame, vec2(bx1,bym1)); - pixelColor += texture2D(renderFrame, vec2(bxm1,bym1)); - pixelColor += texture2D(renderFrame, vec2(bx2,bym1)); - pixelColor += texture2D(renderFrame, vec2(bxm2,bym1)); + pixelColor += texture(renderFrame, vec2(textureCoordinate.s,bym1)); + pixelColor += texture(renderFrame, vec2(bx1,bym1)); + pixelColor += texture(renderFrame, vec2(bxm1,bym1)); + pixelColor += texture(renderFrame, vec2(bx2,bym1)); + pixelColor += texture(renderFrame, vec2(bxm2,bym1)); - pixelColor += texture2D(renderFrame, vec2(bx1, bym2)); - pixelColor += texture2D(renderFrame, vec2(bx1, bym2)); - pixelColor += texture2D(renderFrame, vec2(bxm1, bym2)); + pixelColor += texture(renderFrame, vec2(bx1, bym2)); + pixelColor += texture(renderFrame, vec2(bx1, bym2)); + pixelColor += texture(renderFrame, vec2(bxm1, bym2)); pixelColor /= 21.0; #endif @@ -117,26 +118,26 @@ void main() // _XXXXX_ // __XXX__ // ___X___ - pixelColor += texture2D(renderFrame, textureCoordinate + vec2(0, -PIXEL_SHIFT_2)); - pixelColor += texture2D(renderFrame, textureCoordinate + vec2(-PIXEL_SHIFT_1, -PIXEL_SHIFT_1)); - pixelColor += texture2D(renderFrame, textureCoordinate + vec2(0, -PIXEL_SHIFT_1)); - pixelColor += texture2D(renderFrame, textureCoordinate + vec2(+PIXEL_SHIFT_1, -PIXEL_SHIFT_1)); - pixelColor += texture2D(renderFrame, textureCoordinate + vec2(-PIXEL_SHIFT_2, 0)); - pixelColor += texture2D(renderFrame, textureCoordinate + vec2(-PIXEL_SHIFT_1, 0)); - pixelColor += texture2D(renderFrame, textureCoordinate + vec2(+PIXEL_SHIFT_1, 0)); - pixelColor += texture2D(renderFrame, textureCoordinate + vec2(+PIXEL_SHIFT_2, 0)); - pixelColor += texture2D(renderFrame, textureCoordinate + vec2(-PIXEL_SHIFT_1, -PIXEL_SHIFT_1)); - pixelColor += texture2D(renderFrame, textureCoordinate + vec2(0, -PIXEL_SHIFT_1)); - pixelColor += texture2D(renderFrame, textureCoordinate + vec2(+PIXEL_SHIFT_1, -PIXEL_SHIFT_1)); - pixelColor += texture2D(renderFrame, textureCoordinate + vec2(0, -PIXEL_SHIFT_2)); + pixelColor += texture(renderFrame, textureCoordinate + vec2(0, -PIXEL_SHIFT_2)); + pixelColor += texture(renderFrame, textureCoordinate + vec2(-PIXEL_SHIFT_1, -PIXEL_SHIFT_1)); + pixelColor += texture(renderFrame, textureCoordinate + vec2(0, -PIXEL_SHIFT_1)); + pixelColor += texture(renderFrame, textureCoordinate + vec2(+PIXEL_SHIFT_1, -PIXEL_SHIFT_1)); + pixelColor += texture(renderFrame, textureCoordinate + vec2(-PIXEL_SHIFT_2, 0)); + pixelColor += texture(renderFrame, textureCoordinate + vec2(-PIXEL_SHIFT_1, 0)); + pixelColor += texture(renderFrame, textureCoordinate + vec2(+PIXEL_SHIFT_1, 0)); + pixelColor += texture(renderFrame, textureCoordinate + vec2(+PIXEL_SHIFT_2, 0)); + pixelColor += texture(renderFrame, textureCoordinate + vec2(-PIXEL_SHIFT_1, -PIXEL_SHIFT_1)); + pixelColor += texture(renderFrame, textureCoordinate + vec2(0, -PIXEL_SHIFT_1)); + pixelColor += texture(renderFrame, textureCoordinate + vec2(+PIXEL_SHIFT_1, -PIXEL_SHIFT_1)); + pixelColor += texture(renderFrame, textureCoordinate + vec2(0, -PIXEL_SHIFT_2)); pixelColor /= 13.0; #endif // DOF_QUALITY == 1 #if DOF_QUALITY > 0 - mediump float focusDepth = texture2D(depthFrame, vec2(0.5, 0.5)).r; - mediump float blurAmount = clamp((depth - DOF_DEPTH - focusDepth) / DOF_FALLOFF, 0.0, 1.0); + float focusDepth = texture(depthFrame, vec2(0.5, 0.5)).r; + float blurAmount = clamp((depth - DOF_DEPTH - focusDepth) / DOF_FALLOFF, 0.0, 1.0); pixelColor = pixelColor * blurAmount + renderColor * (1.0 - blurAmount); #endif @@ -160,7 +161,7 @@ void main() // ---- VIDEO_BG END ---- #if VOLUMETRIC_ENVIRONMENT_DOWNSAMPLED == 1 - pixelColor += texture2D(volumetricEnvironmentFrame, textureCoordinate); + pixelColor += texture(volumetricEnvironmentFrame, textureCoordinate); #endif @@ -177,13 +178,13 @@ void main() pixelColor.rgb = mix(pixelColor.rgb, fade_color.rgb, fade_color.a); #endif - gl_FragColor = pixelColor; - + colorOut = pixelColor; //PASSTHROUGH STATEMENT - // gl_FragColor = texture2D(depthFrame, textureCoordinate); + // colorOut = texture(depthFrame, textureCoordinate); - //gl_FragColor = vec4(vec3(blurAmount), 1.0); - + //colorOut = vec4(vec3(blurAmount), 1.0); + + colorOut = vec4(0.0, 0.0, 1.0, 1.0); // FINDME, KIP!!, HACK!! } diff --git a/kraken_standard_assets_osx/Shaders/PostShader_osx.vsh b/kraken_standard_assets_osx/Shaders/PostShader_osx.vsh index c147629..600f844 100644 --- a/kraken_standard_assets_osx/Shaders/PostShader_osx.vsh +++ b/kraken_standard_assets_osx/Shaders/PostShader_osx.vsh @@ -25,11 +25,11 @@ // or implied, of Kearwood Gilbert. // -uniform mediump vec2 viewport_downsample; -attribute vec4 vertex_position; -attribute lowp vec4 vertex_uv; +uniform vec2 viewport_downsample; +in vec4 vertex_position; +in vec4 vertex_uv; -varying mediump vec2 textureCoordinate; +out vec2 textureCoordinate; void main() { diff --git a/kraken_standard_assets_osx/Shaders/ShadowShader_osx.fsh b/kraken_standard_assets_osx/Shaders/ShadowShader_osx.fsh index 81802b9..8c19e35 100644 --- a/kraken_standard_assets_osx/Shaders/ShadowShader_osx.fsh +++ b/kraken_standard_assets_osx/Shaders/ShadowShader_osx.fsh @@ -25,9 +25,11 @@ // or implied, of Kearwood Gilbert. // -//varying mediump vec2 texCoord; +//in mediump vec2 texCoord; + +out vec4 colorOut; void main() { - gl_FragColor = vec4(1.0, 1.0, 1.0, 1.0); + colorOut = vec4(1.0, 1.0, 1.0, 1.0); } diff --git a/kraken_standard_assets_osx/Shaders/ShadowShader_osx.vsh b/kraken_standard_assets_osx/Shaders/ShadowShader_osx.vsh index b8241a0..382558f 100644 --- a/kraken_standard_assets_osx/Shaders/ShadowShader_osx.vsh +++ b/kraken_standard_assets_osx/Shaders/ShadowShader_osx.vsh @@ -28,7 +28,7 @@ #define SHADOW_BIAS 0.01 -attribute highp vec4 vertex_position; +in highp vec4 vertex_position; uniform highp mat4 mvp_matrix; // mvp_matrix is the result of multiplying the model, view, and projection matrices void main() diff --git a/kraken_standard_assets_osx/Shaders/debug_font_osx.fsh b/kraken_standard_assets_osx/Shaders/debug_font_osx.fsh index e4fee7f..bfda860 100644 --- a/kraken_standard_assets_osx/Shaders/debug_font_osx.fsh +++ b/kraken_standard_assets_osx/Shaders/debug_font_osx.fsh @@ -25,12 +25,14 @@ // or implied, of Kearwood Gilbert. // -varying mediump vec2 textureCoordinate; +out vec4 colorOut; + +in mediump vec2 textureCoordinate; uniform sampler2D diffuseTexture; void main() { - vec4 font_color = texture2D(diffuseTexture, textureCoordinate); - gl_FragColor = vec4(font_color.r, font_color.g, font_color.b, font_color.r + 0.50); + vec4 font_color = texture(diffuseTexture, textureCoordinate); + colorOut = vec4(font_color.r, font_color.g, font_color.b, font_color.r + 0.50); } diff --git a/kraken_standard_assets_osx/Shaders/debug_font_osx.vsh b/kraken_standard_assets_osx/Shaders/debug_font_osx.vsh index 5d7bdea..c6680d4 100644 --- a/kraken_standard_assets_osx/Shaders/debug_font_osx.vsh +++ b/kraken_standard_assets_osx/Shaders/debug_font_osx.vsh @@ -25,10 +25,10 @@ // or implied, of Kearwood Gilbert. // -varying mediump vec2 textureCoordinate; +out mediump vec2 textureCoordinate; -attribute vec4 vertex_position; -attribute lowp vec2 vertex_uv; +in vec4 vertex_position; +in lowp vec2 vertex_uv; uniform highp mat4 mvp_matrix; // mvp_matrix is the result of multiplying the model, view, and projection matrices void main() diff --git a/kraken_standard_assets_osx/Shaders/dust_particle_osx.fsh b/kraken_standard_assets_osx/Shaders/dust_particle_osx.fsh index 039a636..92a36eb 100644 --- a/kraken_standard_assets_osx/Shaders/dust_particle_osx.fsh +++ b/kraken_standard_assets_osx/Shaders/dust_particle_osx.fsh @@ -31,13 +31,15 @@ //#extension GL_EXT_shadow_samplers : require -varying mediump vec2 texCoord; +out vec4 colorOut; -varying mediump vec4 shadowMapCoord1; +in mediump vec2 texCoord; + +in mediump vec4 shadowMapCoord1; uniform sampler2DShadow shadowTexture1; uniform mediump vec3 light_color; -varying lowp float intensity_modulate; +in lowp float intensity_modulate; void main() { - gl_FragColor = vec4(light_color, 1.0) * shadow2DProj(shadowTexture1, shadowMapCoord1) * max(1.0 - texCoord.x*texCoord.x-texCoord.y*texCoord.y, 0.0) * intensity_modulate; + colorOut = vec4(light_color, 1.0) * shadow2DProj(shadowTexture1, shadowMapCoord1) * max(1.0 - texCoord.x*texCoord.x-texCoord.y*texCoord.y, 0.0) * intensity_modulate; } \ No newline at end of file diff --git a/kraken_standard_assets_osx/Shaders/dust_particle_osx.vsh b/kraken_standard_assets_osx/Shaders/dust_particle_osx.vsh index c49fb87..66aee7d 100644 --- a/kraken_standard_assets_osx/Shaders/dust_particle_osx.vsh +++ b/kraken_standard_assets_osx/Shaders/dust_particle_osx.vsh @@ -29,19 +29,19 @@ // or implied, of Kearwood Gilbert. // -attribute mediump vec2 vertex_uv; +in mediump vec2 vertex_uv; uniform highp mat4 mvp_matrix; // mvp_matrix is the result of multiplying the model, view, and projection matrices uniform mediump vec4 viewport; uniform mediump float flare_size; -attribute vec4 vertex_position; +in vec4 vertex_position; uniform highp vec3 particle_origin; uniform highp mat4 shadow_mvp1; -varying mediump vec4 shadowMapCoord1; +out mediump vec4 shadowMapCoord1; -varying mediump vec2 texCoord; +out mediump vec2 texCoord; uniform highp float time_absolute; -varying lowp float intensity_modulate; +out lowp float intensity_modulate; void main() { highp vec4 offset_center = vertex_position + vec4(particle_origin, 0.0); diff --git a/kraken_standard_assets_osx/Shaders/flare_osx.fsh b/kraken_standard_assets_osx/Shaders/flare_osx.fsh index 7fce713..0d2831c 100644 --- a/kraken_standard_assets_osx/Shaders/flare_osx.fsh +++ b/kraken_standard_assets_osx/Shaders/flare_osx.fsh @@ -29,10 +29,12 @@ // or implied, of Kearwood Gilbert. // -varying mediump vec2 texCoord; +out vec4 colorOut; + +in vec2 texCoord; uniform sampler2D diffuseTexture; -uniform lowp float material_alpha; +uniform float material_alpha; void main() { - gl_FragColor = vec4(vec3(texture2D(diffuseTexture, texCoord)), 1.0) * material_alpha; + colorOut = vec4(vec3(texture(diffuseTexture, texCoord)), 1.0) * material_alpha; } \ No newline at end of file diff --git a/kraken_standard_assets_osx/Shaders/flare_osx.vsh b/kraken_standard_assets_osx/Shaders/flare_osx.vsh index fc0c4d4..d168d5c 100644 --- a/kraken_standard_assets_osx/Shaders/flare_osx.vsh +++ b/kraken_standard_assets_osx/Shaders/flare_osx.vsh @@ -29,12 +29,12 @@ // or implied, of Kearwood Gilbert. // -attribute mediump vec2 vertex_uv; -uniform highp mat4 mvp_matrix; // mvp_matrix is the result of multiplying the model, view, and projection matrices -uniform mediump vec4 viewport; -uniform mediump float flare_size; +in vec2 vertex_uv; +uniform mat4 mvp_matrix; // mvp_matrix is the result of multiplying the model, view, and projection matrices +uniform vec4 viewport; +uniform float flare_size; -varying mediump vec2 texCoord; +out vec2 texCoord; void main() { texCoord = vertex_uv; diff --git a/kraken_standard_assets_osx/Shaders/light_directional_osx.fsh b/kraken_standard_assets_osx/Shaders/light_directional_osx.fsh index f92a412..77c8a6f 100644 --- a/kraken_standard_assets_osx/Shaders/light_directional_osx.fsh +++ b/kraken_standard_assets_osx/Shaders/light_directional_osx.fsh @@ -25,6 +25,7 @@ // or implied, of Kearwood Gilbert. // +out vec4 colorOut; uniform sampler2D gbuffer_frame; uniform sampler2D gbuffer_depth; @@ -37,14 +38,14 @@ uniform mediump vec4 viewport; void main() { lowp vec2 gbuffer_uv = vec2(gl_FragCoord.xy / viewport.zw); // FINDME, TODO - Dependent Texture Read adding latency, due to calculation of texture UV within fragment -- move to vertex shader? - lowp vec4 gbuffer_sample = texture2D(gbuffer_frame, gbuffer_uv); + lowp vec4 gbuffer_sample = texture(gbuffer_frame, gbuffer_uv); mediump vec3 gbuffer_normal = normalize(2.0 * gbuffer_sample.rgb - 1.0); mediump float gbuffer_specular_exponent = gbuffer_sample.a * 100.0; mediump vec3 view_space_vertex_position = vec3( ((2.0 * gl_FragCoord.xy) - (2.0 * viewport.xy)) / (viewport.zw) - 1.0, - (2.0 * -texture2D(gbuffer_depth, gbuffer_uv).r - gl_DepthRange.near - gl_DepthRange.far) / (gl_DepthRange.far - gl_DepthRange.near) + (2.0 * -texture(gbuffer_depth, gbuffer_uv).r - gl_DepthRange.near - gl_DepthRange.far) / (gl_DepthRange.far - gl_DepthRange.near) ); //mediump float lamberFactor = max(0.0,dot(light_direction_view_space, gbuffer_normal)) * 0.2; @@ -56,5 +57,5 @@ void main() specularFactor = pow(dot(halfVec,gbuffer_normal), gbuffer_specular_exponent); - gl_FragColor = vec4(light_color * lamberFactor, specularFactor) * light_intensity; + colorOut = vec4(light_color * lamberFactor, specularFactor) * light_intensity; } diff --git a/kraken_standard_assets_osx/Shaders/light_directional_osx.vsh b/kraken_standard_assets_osx/Shaders/light_directional_osx.vsh index 62c7fd9..d99548a 100644 --- a/kraken_standard_assets_osx/Shaders/light_directional_osx.vsh +++ b/kraken_standard_assets_osx/Shaders/light_directional_osx.vsh @@ -25,7 +25,7 @@ // or implied, of Kearwood Gilbert. // -attribute vec4 vertex_position; +in vec4 vertex_position; void main() { diff --git a/kraken_standard_assets_osx/Shaders/light_point_inside_osx.fsh b/kraken_standard_assets_osx/Shaders/light_point_inside_osx.fsh index f3e9aa1..07f032d 100644 --- a/kraken_standard_assets_osx/Shaders/light_point_inside_osx.fsh +++ b/kraken_standard_assets_osx/Shaders/light_point_inside_osx.fsh @@ -25,6 +25,7 @@ // or implied, of Kearwood Gilbert. // +out vec4 colorOut; uniform sampler2D gbuffer_frame; uniform sampler2D gbuffer_depth; @@ -43,14 +44,14 @@ void main() { lowp vec2 gbuffer_uv = vec2(gl_FragCoord.xy / viewport.zw); // FINDME, TODO - Dependent Texture Read adding latency, due to calculation of texture UV within fragment -- move to vertex shader? - lowp vec4 gbuffer_sample = texture2D(gbuffer_frame, gbuffer_uv); + lowp vec4 gbuffer_sample = texture(gbuffer_frame, gbuffer_uv); mediump vec3 gbuffer_normal = normalize(2.0 * gbuffer_sample.rgb - 1.0); mediump float gbuffer_specular_exponent = gbuffer_sample.a * 100.0; mediump vec4 clip_space_vertex_position = vec4( gl_FragCoord.xy / viewport.zw * 2.0 - 1.0, - texture2D(gbuffer_depth, gbuffer_uv).r * 2.0 - 1.0, + texture(gbuffer_depth, gbuffer_uv).r * 2.0 - 1.0, 1.0 ); @@ -69,5 +70,5 @@ void main() specularFactor = pow(dot(halfVec,gbuffer_normal), gbuffer_specular_exponent); //} - gl_FragColor = vec4(light_color * lamberFactor, specularFactor) * light_attenuation; + colorOut = vec4(light_color * lamberFactor, specularFactor) * light_attenuation; } diff --git a/kraken_standard_assets_osx/Shaders/light_point_inside_osx.vsh b/kraken_standard_assets_osx/Shaders/light_point_inside_osx.vsh index 62c7fd9..d99548a 100644 --- a/kraken_standard_assets_osx/Shaders/light_point_inside_osx.vsh +++ b/kraken_standard_assets_osx/Shaders/light_point_inside_osx.vsh @@ -25,7 +25,7 @@ // or implied, of Kearwood Gilbert. // -attribute vec4 vertex_position; +in vec4 vertex_position; void main() { diff --git a/kraken_standard_assets_osx/Shaders/light_point_osx.fsh b/kraken_standard_assets_osx/Shaders/light_point_osx.fsh index 5c9b4bb..2921cf1 100644 --- a/kraken_standard_assets_osx/Shaders/light_point_osx.fsh +++ b/kraken_standard_assets_osx/Shaders/light_point_osx.fsh @@ -25,6 +25,7 @@ // or implied, of Kearwood Gilbert. // +out vec4 colorOut; uniform sampler2D gbuffer_frame; uniform sampler2D gbuffer_depth; @@ -43,14 +44,14 @@ void main() { lowp vec2 gbuffer_uv = vec2(gl_FragCoord.xy / viewport.zw); // FINDME, TODO - Dependent Texture Read adding latency, due to calculation of texture UV within fragment -- move to vertex shader? - lowp vec4 gbuffer_sample = texture2D(gbuffer_frame, gbuffer_uv); + lowp vec4 gbuffer_sample = texture(gbuffer_frame, gbuffer_uv); mediump vec3 gbuffer_normal = normalize(2.0 * gbuffer_sample.rgb - 1.0); mediump float gbuffer_specular_exponent = gbuffer_sample.a * 100.0; mediump vec4 clip_space_vertex_position = vec4( gl_FragCoord.xy / viewport.zw * 2.0 - 1.0, - texture2D(gbuffer_depth, gbuffer_uv).r * 2.0 - 1.0, + texture(gbuffer_depth, gbuffer_uv).r * 2.0 - 1.0, 1.0 ); @@ -69,5 +70,5 @@ void main() specularFactor = pow(dot(halfVec,gbuffer_normal), gbuffer_specular_exponent); //} - gl_FragColor = vec4(light_color * lamberFactor, specularFactor) * light_attenuation; + colorOut = vec4(light_color * lamberFactor, specularFactor) * light_attenuation; } diff --git a/kraken_standard_assets_osx/Shaders/light_point_osx.vsh b/kraken_standard_assets_osx/Shaders/light_point_osx.vsh index 14bf865..84c6687 100644 --- a/kraken_standard_assets_osx/Shaders/light_point_osx.vsh +++ b/kraken_standard_assets_osx/Shaders/light_point_osx.vsh @@ -25,7 +25,7 @@ // or implied, of Kearwood Gilbert. // -attribute vec4 vertex_position; +in vec4 vertex_position; uniform highp mat4 mvp_matrix; // mvp_matrix is the result of multiplying the model, view, and projection matrices void main() diff --git a/kraken_standard_assets_osx/Shaders/occlusion_test_osx.fsh b/kraken_standard_assets_osx/Shaders/occlusion_test_osx.fsh index 5beec00..7e484ab 100644 --- a/kraken_standard_assets_osx/Shaders/occlusion_test_osx.fsh +++ b/kraken_standard_assets_osx/Shaders/occlusion_test_osx.fsh @@ -29,7 +29,9 @@ // or implied, of Kearwood Gilbert. // +out vec4 colorOut; + void main() { - //gl_FragColor = vec4(0.00, 0.00, 0.00, 0.00); - gl_FragColor = vec4(0.00, 0.00, 0.00, 0.00); + //colorOut = vec4(0.00, 0.00, 0.00, 0.00); + colorOut = vec4(0.00, 0.00, 0.00, 0.00); } diff --git a/kraken_standard_assets_osx/Shaders/occlusion_test_osx.vsh b/kraken_standard_assets_osx/Shaders/occlusion_test_osx.vsh index f76551f..f095553 100644 --- a/kraken_standard_assets_osx/Shaders/occlusion_test_osx.vsh +++ b/kraken_standard_assets_osx/Shaders/occlusion_test_osx.vsh @@ -25,7 +25,7 @@ // or implied, of Kearwood Gilbert. // -attribute vec4 vertex_position; +in vec4 vertex_position; uniform highp mat4 mvp_matrix; // mvp_matrix is the result of multiplying the model, view, and projection matrices void main() diff --git a/kraken_standard_assets_osx/Shaders/simple_blit_osx.fsh b/kraken_standard_assets_osx/Shaders/simple_blit_osx.fsh index abc6fe4..f91ab2a 100644 --- a/kraken_standard_assets_osx/Shaders/simple_blit_osx.fsh +++ b/kraken_standard_assets_osx/Shaders/simple_blit_osx.fsh @@ -25,11 +25,13 @@ // or implied, of Kearwood Gilbert. // -varying mediump vec2 textureCoordinate; +out vec4 colorOut; + +in mediump vec2 textureCoordinate; uniform sampler2D diffuseTexture; void main() { - gl_FragColor = texture2D(diffuseTexture, textureCoordinate); + colorOut = texture(diffuseTexture, textureCoordinate); } diff --git a/kraken_standard_assets_osx/Shaders/simple_blit_osx.vsh b/kraken_standard_assets_osx/Shaders/simple_blit_osx.vsh index fbc9319..ca983bc 100644 --- a/kraken_standard_assets_osx/Shaders/simple_blit_osx.vsh +++ b/kraken_standard_assets_osx/Shaders/simple_blit_osx.vsh @@ -25,10 +25,10 @@ // or implied, of Kearwood Gilbert. // -varying mediump vec2 textureCoordinate; +out mediump vec2 textureCoordinate; -attribute vec4 vertex_position; -attribute lowp vec4 vertex_uv; +in vec4 vertex_position; +in lowp vec4 vertex_uv; uniform highp mat4 mvp_matrix; // mvp_matrix is the result of multiplying the model, view, and projection matrices void main() diff --git a/kraken_standard_assets_osx/Shaders/sky_box_osx.fsh b/kraken_standard_assets_osx/Shaders/sky_box_osx.fsh index cc4326a..0876d09 100644 --- a/kraken_standard_assets_osx/Shaders/sky_box_osx.fsh +++ b/kraken_standard_assets_osx/Shaders/sky_box_osx.fsh @@ -29,10 +29,12 @@ // or implied, of Kearwood Gilbert. // +out vec4 colorOut; + uniform samplerCube diffuseTexture; -varying mediump vec3 texCoord; +in mediump vec3 texCoord; void main() { - gl_FragColor = textureCube(diffuseTexture, normalize(texCoord)); + colorOut = textureCube(diffuseTexture, normalize(texCoord)); } \ No newline at end of file diff --git a/kraken_standard_assets_osx/Shaders/sky_box_osx.vsh b/kraken_standard_assets_osx/Shaders/sky_box_osx.vsh index 3540e26..c6b6207 100644 --- a/kraken_standard_assets_osx/Shaders/sky_box_osx.vsh +++ b/kraken_standard_assets_osx/Shaders/sky_box_osx.vsh @@ -30,12 +30,9 @@ // // -attribute vec4 vertex_position; -//attribute lowp vec4 vertex_uv; -// -//varying mediump vec2 textureCoordinate; +in vec4 vertex_position; -varying mediump vec3 texCoord; +out mediump vec3 texCoord; uniform highp mat4 inv_mvp_matrix_no_translate; // Inverse of the model-view-projection matrix, without view translation component uniform mediump vec4 viewport; diff --git a/kraken_standard_assets_osx/Shaders/sprite_osx.fsh b/kraken_standard_assets_osx/Shaders/sprite_osx.fsh index 4519d5d..feb61b3 100644 --- a/kraken_standard_assets_osx/Shaders/sprite_osx.fsh +++ b/kraken_standard_assets_osx/Shaders/sprite_osx.fsh @@ -29,10 +29,12 @@ // or implied, of Kearwood Gilbert. // -varying mediump vec2 texCoord; +out vec4 colorOut; + +in mediump vec2 texCoord; uniform sampler2D diffuseTexture; uniform lowp float material_alpha; void main() { - gl_FragColor = vec4(vec3(texture2D(diffuseTexture, texCoord)), 1.0) * material_alpha; + colorOut = vec4(vec3(texture(diffuseTexture, texCoord)), 1.0) * material_alpha; } \ No newline at end of file diff --git a/kraken_standard_assets_osx/Shaders/sprite_osx.vsh b/kraken_standard_assets_osx/Shaders/sprite_osx.vsh index 1e8682a..b367a1c 100644 --- a/kraken_standard_assets_osx/Shaders/sprite_osx.vsh +++ b/kraken_standard_assets_osx/Shaders/sprite_osx.vsh @@ -29,11 +29,11 @@ // or implied, of Kearwood Gilbert. // -attribute mediump vec2 vertex_uv; +in mediump vec2 vertex_uv; uniform highp mat4 mvp_matrix; // mvp_matrix is the result of multiplying the model, view, and projection matrices uniform mediump vec4 viewport; -varying mediump vec2 texCoord; +out mediump vec2 texCoord; void main() { texCoord = vertex_uv; diff --git a/kraken_standard_assets_osx/Shaders/visualize_overlay_osx.fsh b/kraken_standard_assets_osx/Shaders/visualize_overlay_osx.fsh index 42aae77..de29a57 100644 --- a/kraken_standard_assets_osx/Shaders/visualize_overlay_osx.fsh +++ b/kraken_standard_assets_osx/Shaders/visualize_overlay_osx.fsh @@ -29,7 +29,9 @@ // or implied, of Kearwood Gilbert. // +out vec4 colorOut; + void main() { - gl_FragColor = vec4(0.0, 0.05, 0.05, 0.0); + colorOut = vec4(0.0, 0.05, 0.05, 0.0); } diff --git a/kraken_standard_assets_osx/Shaders/visualize_overlay_osx.vsh b/kraken_standard_assets_osx/Shaders/visualize_overlay_osx.vsh index ade5a63..b508cd3 100644 --- a/kraken_standard_assets_osx/Shaders/visualize_overlay_osx.vsh +++ b/kraken_standard_assets_osx/Shaders/visualize_overlay_osx.vsh @@ -29,7 +29,7 @@ // or implied, of Kearwood Gilbert. // -attribute vec4 vertex_position; +in vec4 vertex_position; uniform highp mat4 mvp_matrix; // mvp_matrix is the result of multiplying the model, view, and projection matrices void main() diff --git a/kraken_standard_assets_osx/Shaders/volumetric_fog_downsampled_osx.fsh b/kraken_standard_assets_osx/Shaders/volumetric_fog_downsampled_osx.fsh index 8e1f7ee..ac905b1 100644 --- a/kraken_standard_assets_osx/Shaders/volumetric_fog_downsampled_osx.fsh +++ b/kraken_standard_assets_osx/Shaders/volumetric_fog_downsampled_osx.fsh @@ -25,7 +25,9 @@ // or implied, of Kearwood Gilbert. // -varying mediump vec4 shadowMapCoord1; +out vec4 colorOut; + +in mediump vec4 shadowMapCoord1; uniform sampler2DShadow shadowTexture1; uniform lowp sampler2D depthFrame; uniform mediump vec4 viewport; @@ -33,7 +35,7 @@ uniform mediump vec3 light_color; void main() { - if(gl_FragCoord.z > texture2D(depthFrame, vec2(gl_FragCoord.xy / viewport.zw)).r) discard; + if(gl_FragCoord.z > texture(depthFrame, vec2(gl_FragCoord.xy / viewport.zw)).r) discard; - gl_FragColor = vec4(light_color, 1.0) * shadow2DProj(shadowTexture1, shadowMapCoord1); + colorOut = vec4(light_color, 1.0) * shadow2DProj(shadowTexture1, shadowMapCoord1); } diff --git a/kraken_standard_assets_osx/Shaders/volumetric_fog_downsampled_osx.vsh b/kraken_standard_assets_osx/Shaders/volumetric_fog_downsampled_osx.vsh index 9bde6f3..976996a 100644 --- a/kraken_standard_assets_osx/Shaders/volumetric_fog_downsampled_osx.vsh +++ b/kraken_standard_assets_osx/Shaders/volumetric_fog_downsampled_osx.vsh @@ -25,13 +25,13 @@ // or implied, of Kearwood Gilbert. // -attribute highp vec4 vertex_position; +in highp vec4 vertex_position; uniform highp mat4 inv_mvp_matrix; uniform highp vec2 slice_depth_scale; // First component is the depth for the nearest plane, in view space. Second component is the distance between planes, in view space uniform highp mat4 shadow_mvp1; -varying mediump vec4 shadowMapCoord1; +out mediump vec4 shadowMapCoord1; uniform highp mat4 projection_matrix; diff --git a/kraken_standard_assets_osx/Shaders/volumetric_fog_osx.fsh b/kraken_standard_assets_osx/Shaders/volumetric_fog_osx.fsh index ec1112f..362b452 100644 --- a/kraken_standard_assets_osx/Shaders/volumetric_fog_osx.fsh +++ b/kraken_standard_assets_osx/Shaders/volumetric_fog_osx.fsh @@ -25,11 +25,13 @@ // or implied, of Kearwood Gilbert. // -varying mediump vec4 shadowMapCoord1; +out vec4 colorOut; + +in mediump vec4 shadowMapCoord1; uniform sampler2DShadow shadowTexture1; uniform mediump vec3 light_color; void main() { - gl_FragColor = vec4(light_color, 1.0) * shadow2DProj(shadowTexture1, shadowMapCoord1); + colorOut = vec4(light_color, 1.0) * shadow2DProj(shadowTexture1, shadowMapCoord1); } diff --git a/kraken_standard_assets_osx/Shaders/volumetric_fog_osx.vsh b/kraken_standard_assets_osx/Shaders/volumetric_fog_osx.vsh index 2f98b72..4d8183d 100644 --- a/kraken_standard_assets_osx/Shaders/volumetric_fog_osx.vsh +++ b/kraken_standard_assets_osx/Shaders/volumetric_fog_osx.vsh @@ -25,13 +25,13 @@ // or implied, of Kearwood Gilbert. // -attribute highp vec4 vertex_position; +in highp vec4 vertex_position; uniform highp mat4 inv_mvp_matrix; uniform highp vec2 slice_depth_scale; // First component is the depth for the nearest plane, in view space. Second component is the distance between planes, in view space uniform highp mat4 shadow_mvp1; -varying mediump vec4 shadowMapCoord1; +out mediump vec4 shadowMapCoord1; uniform highp mat4 projection_matrix; diff --git a/kraken_tvos/Kraken-Prefix.pch b/kraken_tvos/Kraken-Prefix.pch new file mode 100644 index 0000000..890263e --- /dev/null +++ b/kraken_tvos/Kraken-Prefix.pch @@ -0,0 +1,8 @@ +// +// Prefix header for all source files of the 'KREngine' target in the 'KREngine' project +// + +#ifdef __OBJC__ + #include + #include +#endif diff --git a/kraken_tvos/info.plist b/kraken_tvos/info.plist new file mode 100644 index 0000000..7dce4dc --- /dev/null +++ b/kraken_tvos/info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + com.krakenengine.$(PRODUCT_NAME:rfc1034identifier) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + $(CURRENT_PROJECT_VERSION) + NSPrincipalClass + + + diff --git a/kraken_tvos/kraken.h b/kraken_tvos/kraken.h new file mode 100644 index 0000000..224243b --- /dev/null +++ b/kraken_tvos/kraken.h @@ -0,0 +1,19 @@ +// +// kraken.h +// kraken +// +// Created by Kearwood Gilbert on 2014-09-13. +// Copyright (c) 2014 Kearwood Software. All rights reserved. +// + +#import + +//! Project version number for kraken. +FOUNDATION_EXPORT double krakenVersionNumber; + +//! Project version string for kraken. +FOUNDATION_EXPORT const unsigned char krakenVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + +