Last night the new release of Shaderific has been approved by Apple and is now available on the App Store. Since this is a major upgrade, I want to give a short overview of the new features and talk a bit about the highlights:
- Three new high resolution objects
- Support for object import (Wavefront .obj files)
- Support for texture import (texture2D and cubemaps)
- Support for export of objects as header files
- Full texture support in the shaders
- New texture shaders (texturing, normal mapping, environment mapping)
- Small improvements to the shader editor
Full texture support
Shaderific has now full texture support. You can download your own texture / image files from your Dropbox folder and import them into the app. Images in JPEG, PNG, TIFF, GIF and BMP format are supported. You can bind a texture to a program via the shader menu using drag and drop and even exchange textures during rendering.
Shaderific supports both texture2D and cubemap textures. If the image dimensions are appropriate for a cubemap texture the import dialog shows a corresponding import option.
Seven new shader examples are included in the update. They demonstrate different techniques to use textures in a shader program ranging from animated texturing to normal and environment mapping.
Object import and export
Three new high resolution objects have been included: a shopping cart with 87,909 vertices and 162,552 faces, a saucepan with 103,032 vertices and 205,697 faces and a fire extinguisher with 151,425 vertices and 300,632 faces. Now there are 25 build-in objects.
Nonetheless you should be able to use your own objects. It is now possible to import objects in Wavefront .obj file format. The import dialog has options for normalizing and scaling the object and you can chose wether interpolated surface normals or face normals should be calculated. Spherical texture coordinates are generated for every imported object automatically.
You can export every imported object and upload it to your Dropbox folder if you want to use it in a development project on your personal computer. Exporting an object generates a header file (object name with .h extension) with vertex, normal and face arrays that can be included as a header file in any development project.