Commit Graph

  • b05ef5248d Increased maximum sun intensity kearwood 2012-09-27 18:20:56 +00:00
  • faec06833e Increased minimum texture LOD dimension to 64x64 kearwood 2012-09-27 18:18:11 +00:00
  • 63fb848da5 Implemented global dynamic texture LOD selection to constrain texture memory usage within bounds kearwood 2012-09-26 20:07:48 +00:00
  • a39610a292 Now drawing geometry in front-to-back order for opaque surfaces and back-to-front order for transparent surfaces. This solves some sorting issues with transparent blended textures stacking. Additionally, it improves the efficiency of the occlusion culling algorithm. kearwood 2012-09-21 08:24:55 +00:00
  • d4903c1d84 Fixed inaccurate view frustum culling Implemented smarter octree visibility query batching algorithm kearwood 2012-09-21 07:31:18 +00:00
  • d23fe9a700 Added sliders for temperature and intensity mike 2012-09-21 05:59:24 +00:00
  • 0dcd2d19f4 Added additional validation logic for debugging Corrected memory corruption in VBO's! No longer have random visual artifacts when models with > 65535 triangles are displayed. kearwood 2012-09-20 10:51:28 +00:00
  • 57fd737955 Corrected shader link status validation kearwood 2012-09-20 09:32:20 +00:00
  • ba14fc2b8c Added missing GLDEBUG() macros kearwood 2012-09-20 08:27:25 +00:00
  • 96c5b62e26 Updated for XCode 4.5 Cleanup and removal of redundant shader compiling and validation code kearwood 2012-09-20 08:16:59 +00:00
  • 9f4608a888 Moved the post processing shader to KRShaderManager / KRShader Changed many vertex buffers to VBO's kearwood 2012-09-19 20:26:30 +00:00
  • 283460acc7 Fixed bug in material loader that resulted in corrupted displays for materials with > 64 characters in the name kearwood 2012-09-13 23:59:28 +00:00
  • fc1216ffa2 Updated framework reference paths for OSX framework target kearwood 2012-09-13 20:53:12 +00:00
  • 70478d87ca Updated project settings to target OSX 10.7 kearwood 2012-09-13 20:28:03 +00:00
  • 917c4221ea Added debugging macro for GL calls Activated octree culling logic as a default Wide spread bug fixes related to occlusion culling and GPU resource management Implemented logic to automatically enable alpha blending for materials that do not contain an alpha blending statement but have a material-level opacity value set less than 1.0 Extended the krobject file format to 256 characters for material names. Added logic to prevent exported krobject files from being corrupted when long material names are used. kearwood 2012-09-13 20:09:19 +00:00
  • 763e8b8fe7 Fixed bug causing incorrect specular value to be assigned to a material when a mesh is rendered using the same shader as the previously rendered material. kearwood 2012-09-11 08:50:25 +00:00
  • c6417c151d Performance improvement in the deferred lighting pipeline, utilizing hardware occlusion queries to avoid rendering objects in 3rd pass (Final Render) or loading their textures when they have been determined to be occluded in the 1st pass. (GBuffer populate) kearwood 2012-09-11 08:15:05 +00:00
  • b802d22dc0 Implemented Deferred Point light visualization kearwood 2012-09-11 07:23:54 +00:00
  • 377fd8e6b5 Point lights no longer disappear when the camera is too close (within their sphere of influence) kearwood 2012-09-11 06:45:02 +00:00
  • 754496fe06 Implemented texture and VBO swapping system that keeps GPU memory utilization within limits kearwood 2012-09-11 04:32:04 +00:00
  • 34c7dc7b53 Implemented KRBundle's Implementation of logic to allow dynamic loading and unloading of meshes and models for scenes larger than RAM in progress kearwood 2012-09-11 03:06:35 +00:00
  • c7b7c20310 moved shader mike 2012-09-06 21:24:41 +00:00
  • eb912256ab Disabled octree visualization mike 2012-09-06 20:25:49 +00:00
  • 527bcb33c3 Implemented visualization of octrees for debugging occlusion culling algorithms. Corrected project settings to allow objpack to compile again. kearwood 2012-09-05 18:14:08 +00:00
  • c74a85d931 Added texture loading and mapping to KRSkybox mike 2012-08-30 23:23:28 +00:00
  • 04e7a7e83c Implemented KRAABB class. Occlusion culling in progress kearwood 2012-08-30 22:37:44 +00:00
  • cee504408a Now iterating through the octree rather than the scene graph structure during render, in preparation for occlusion culling kearwood 2012-08-30 19:31:38 +00:00
  • 99b6d6771d Occlusion testing implementation in progress kearwood 2012-08-29 22:29:18 +00:00
  • f8810110cd Implemented KROctree class to be used by upcoming occlusion culling and physics features Refactored scene graph notification system structures to be owned by the KRScene object Merged Mike's changes kearwood 2012-08-29 21:43:11 +00:00
  • 43a4ecd2ea Updated include header files to archive mike 2012-08-24 01:09:43 +00:00
  • e56c217999 Added XML load filename and texture references for skybox mike 2012-08-24 00:37:01 +00:00
  • 7395a63f99 Enabled alpha_mode blendoneside and alpha_mode blendtwoside blending options kearwood 2012-08-24 00:06:38 +00:00
  • bbfb04347c Added KRSkyBox as new KRNode instance mike 2012-08-23 23:18:45 +00:00
  • 4b7163aa48 Added getParameterIndexForName mike 2012-08-23 22:43:26 +00:00
  • 9077b5a890 Worked around texture loading bug kearwood 2012-08-23 19:44:23 +00:00
  • fc45c06281 Added getContext method to KRContextObject kearwood 2012-08-23 17:32:38 +00:00
  • 1efbb63ecf Performance optimizations in deferred lighting shaders Created structures for alpha transparency and occlusion culling Fixed memory allocation issue in KREngine.mm (pointer to NSDictionary allocated on stack retained and later dereferenced when popped) kearwood 2012-08-23 16:55:46 +00:00
  • 6d7e7d9abb Added virtual directive to destructors where missing kearwood 2012-08-17 01:06:27 +00:00
  • 5768902ee2 Implemented notification system needed for occlusion culling and transparency sorting kearwood 2012-08-17 01:04:49 +00:00
  • 3b2d71221a Exposed an NSDictionary containing the indexes of the engine parameters kearwood 2012-08-16 22:50:30 +00:00
  • 97b036878e Now parsing additional alpha modes in KRMaterial kearwood 2012-08-16 22:30:14 +00:00
  • 0ce4bc8b11 Changed ObjC properties to be pointers for C++ objects kearwood 2012-08-16 20:44:33 +00:00
  • 721d25f0ed Cleanup methods in KRCamera that should be private kearwood 2012-08-16 17:51:27 +00:00
  • 8071731b7a Made call private in KRCamera.h so it doesn't get confused with the renderFrame method kearwood 2012-08-16 17:46:23 +00:00
  • aef37169cb Corrected getContext accessor method kearwood 2012-08-16 17:26:15 +00:00
  • 29e2181c7e Refactored many functions out of KREngine.mm into KRCamera.cpp in preparation for alpha transparent polygon sorting structures which will be owned by KRCamera kearwood 2012-08-15 21:26:06 +00:00
  • e8ad725d45 Implemented punch-through / alpha tested material support, enabled with the "alpha_test true" in the material file. kearwood 2012-08-09 23:40:32 +00:00
  • 61027da1cf Adjusted KRLIGHT_MIN_INFLUENCE kearwood 2012-08-09 20:33:45 +00:00
  • 3d832d1586 Added flares for light sources kearwood 2012-06-15 00:05:56 +00:00
  • f9cf9b7ffe Organized render passes, in preparation for transparency pass and point light flares kearwood 2012-06-14 19:33:17 +00:00
  • 9dfc7d93f9 Minor math library update kearwood 2012-06-10 06:38:31 +00:00
  • 9c8430368f Updated math library and added the KRQuaternion class. kearwood 2012-06-10 06:24:04 +00:00
  • cad53fcf69 Very early KRWorldBuilder scaffolding in progress. New KRVector3 math functions kearwood 2012-06-07 17:19:29 +00:00
  • 0b76fadeef Adjusted point light cutoff level Corrected directional light post-rotation Fixed engine parameter value mapping kearwood 2012-05-11 01:06:29 +00:00
  • dfdc8c69b8 Native Blender file format support in progress Changed material colour parameters from separate float values to KRVector3's kearwood 2012-05-09 01:56:04 +00:00
  • 2627657e93 Reflection map framework in progress kearwood 2012-05-08 23:39:52 +00:00
  • 0594bc0953 Point lights now fully functional with deferred lighting kearwood 2012-04-26 09:06:45 +00:00
  • 167a18f3a7 Hooked up the directional light colour and directional light intensity parameters from the scene graph kearwood 2012-04-20 02:02:33 +00:00
  • 1df9ac00ca Reduced precision of shader variables to increase performance OSX library now compiling again kearwood 2012-04-20 01:06:12 +00:00
  • b2c67f5276 Specular lighting now working correctly with the deferred lighting kearwood 2012-04-20 00:48:23 +00:00
  • 6c76335d9e Disabled debugging code kearwood 2012-04-20 00:19:14 +00:00
  • 17e0503529 Specular calculations for deferred lighting in progress kearwood 2012-04-20 00:17:15 +00:00
  • 21762174bf Specular calculations for deferred lighting in progress Have integrated the position of the directional light in the scene graph (imported from fbx) with the forward renderer and deferred lighting renderer's directional light angle kearwood 2012-04-19 23:39:32 +00:00
  • 2ead2995d5 Deferred lighting now working with directional lights kearwood 2012-04-14 02:15:35 +00:00
  • 97d8054cd0 Deferred lighting in progress Now able to dynamically switch between shaders for lights and objects kearwood 2012-04-13 23:24:07 +00:00
  • 0d7cdffd24 Shader cleanup, deferred lighting in progress kearwood 2012-04-13 22:48:13 +00:00
  • 1ebdee1b3c Implemented multi-pass framework for deferred lighting kearwood 2012-04-13 06:40:53 +00:00
  • b88cf8e0cb Deferred lighting implementation in progress. Now generating view-space normal fragments for the 1st pass G-buffer. Added transpose() method to KRMat4 kearwood 2012-04-13 01:13:18 +00:00
  • 3749d3edfd Light transformation, rotation, and scaling is now imported correctly from FBX files kearwood 2012-04-12 22:18:38 +00:00
  • f847b89f5a Implemented KRContext class to reduce the parameter count of method calls kearwood 2012-04-12 19:43:08 +00:00
  • 1c3ffa4d67 Removed extraneous glBind calls, added FPS debugging info kearwood 2012-04-12 08:49:47 +00:00
  • 3ff648a08f Cleaned up warnings kearwood 2012-04-12 07:30:01 +00:00
  • aa5ca4ee45 Added missing #import kearwood 2012-04-12 06:51:11 +00:00
  • 4dc1164dbe Test App controls are now frame-rate independent kearwood 2012-04-12 06:41:56 +00:00
  • 35df6c2ec5 Refactored, renaming "shadow map" to "light map" to avoid confusion with the shadow volume maps kearwood 2012-04-12 06:25:44 +00:00
  • ff9bd874d3 Now using scene graph nodes for instance and bound extents management. kearwood 2012-04-12 06:04:15 +00:00
  • d4b80212cc Implemented persistence of lighting information through XML files kearwood 2012-04-12 01:27:30 +00:00
  • 4215bf8b22 Set up scene graph objects required for managing light sources kearwood 2012-04-12 00:43:53 +00:00
  • 2ea2924764 Presence of Layered Textures no longer disables texture import from FBX files kearwood 2012-04-11 19:59:08 +00:00
  • d0433a2b1a Fixed bug causing shadow maps to be disabled when there is no specular or per-pixel lighting kearwood 2012-04-11 18:18:47 +00:00
  • aadc5c840c Reversed recent shader changes that broke specular Implementation of deferred rendering in progress kearwood 2012-04-06 01:07:23 +00:00
  • 33c5b754de Creating object model to store lights returned by FBX import in preparation of deferred rendering. kearwood 2012-04-05 23:09:41 +00:00
  • 384068eb9c Shader speed optimization kearwood 2012-04-05 21:52:09 +00:00
  • 03b749b93c Optimization of specular calculation in fragment shader kearwood 2012-04-05 21:47:49 +00:00
  • 75e42c08fd KRObjView now automatically loads any models it finds in the "Documents" folder and assigns light maps that have the same name as the model appended with "_lightmap". Lightmapping now enabled by default. kearwood 2012-04-05 21:18:25 +00:00
  • ee3fbb8a8a Fixed 2nd UV set import issues. Lightmapping now fully functional kearwood 2012-04-05 20:12:39 +00:00
  • f2845b2456 Implemented texture scale and offset material parameters kearwood 2012-03-30 00:54:44 +00:00
  • 5498499b51 Light mapping implemented kearwood 2012-03-29 19:39:28 +00:00
  • 35d138c31c Corrected tangent and normal import from FBX files. FBX Import now functional. kearwood 2012-03-28 23:34:39 +00:00
  • d457991ed0 FBX File Import - Materials and texture map names now imported kearwood 2012-03-28 21:58:55 +00:00
  • b7c8ae001b FBX File import now re-orders vertices and batches all materials together to reduce draw calls kearwood 2012-03-28 19:34:52 +00:00
  • 6edc77e32b Now importing multiple submeshes / materials per object during FBX import kearwood 2012-03-28 19:06:23 +00:00
  • 67fee4a291 Implementation of FBX import workflow in progress kearwood 2012-03-23 02:28:46 +00:00
  • d305bd1438 Implemented logic to track the source of the mesh data and perform appropriate cleanup depending on if it was malloc'ed or mmap'ed. Implemented writePack method kearwood 2012-03-16 00:53:15 +00:00
  • d43989cd88 Resolved linker errors, now able to cross-compile the OSX framework and iOS library from the same source kearwood 2012-03-15 23:58:37 +00:00
  • bb38ede18e Renamed Vector3 class to KRVector3 KRObjPacker project updated to use KREngine_osx framework rather than having a copy of the files kearwood 2012-03-15 22:57:20 +00:00
  • a9786b80e6 Created target for KREngine to compile as a framework for OSX. kearwood 2012-03-15 22:34:08 +00:00
  • 9c66c28025 Removed old test flight version kearwood 2012-03-15 21:57:14 +00:00
  • bb7bc1cba8 Added test flight to the project kearwood 2012-03-15 21:55:05 +00:00
  • fca472721b Optimized further to reduce redundant GL state changes kearwood 2012-03-15 20:44:57 +00:00