I've posted up two new tutorial series and a new standalone tutorial - 14 new tutorials in total.
The first series is Getting Started which takes you through downloading ChilliSource, setting up a project and building it.
The second series, 3D Pong, details how to develop a simple 3D Pong game. It covers topics including rendering 3D models, creating components and mouse input.
Finally, Cricket Audio explains how to play 2D audio using the Cricket Audio system.
Let us know what you think! If you have any problems with the tutorials please let us know
Just came to the end of the 3D pong tutorial on Android and everything has worked out fine except for casting shadows. There are shadows on the paddles and the ball but not the arena. Any ideas?
EDIT: Running on an iOS simulator does cast shadows but the performance is very laggy.
EDIT 2: Same issues (both Android and iOS) with the sample project.
Welcome to the forums!
The iOS simulator emulates OpenGL in software which unfortunately means apps which make moderate use of the GPU perform terribly. Try testing it on device if you can - it should run smoothly there. If you can't do that then disabling shadows should be enough to get it running smooth enough for testing.
The engine relies on depth textures for shadow rendering, but on Android there is no guarantee that the openGL extension for depth textures (
GL_OES_depth_texture) will exist. If it doesn't the engine will fall back on rendering without shadows. In this case there will still be standard lighting, so the ball and paddle will appear to be shadowed on the opposite side of the light, but objects won't cast shadows on to other objects.
The vast majority of Android devices support the extension but there are some devices that don't. The worst offender that I'm aware of is the first generation Nexus 7. To confirm that this is your issue it's usually quite easy to find a list of all extensions a device supports online. Alternately you could use
CSRendering::RenderCapabilities to check. To do that, include
ChilliSource/Rendering/Base.h in App.cpp add the following to
auto* renderCapabilities = GetSystem<CSRendering::RenderCapabilities>();
CS_LOG_VERBOSE("Shadows are supported on this device: " + CSCore::ToString(renderCapabilities->IsShadowMappingSupported()));
If that returns true, yet you still don't see shadows, then something a bit more strange is going on.
Hope that helps, let me know if you're still having problems