Skip to content

ModAPI SDK v2.5.211

Choose a tag to compare

@emd4600 emd4600 released this 28 Oct 02:23
· 349 commits to master since this release

Terrain update! This update improves and adds many terrain classes like cTerrainSphere, cTerrainSphereQuad and cTerrainShaderMgr, including some of their rendering methods, like cTerrainSphereQuad::RenderWater. This update also completes the TextureManager class and improves the RenderTargetManager, allowing you to do more complex rendering.

And there's even more! To make modding the terrain easier, I've reconstructed some terrain rendering methods' source code: https://emd4600.github.io/Spore-ModAPI/_source_code-_terrain.html
For those interested in adding new star types, some star-related functions have also been reconstructed: https://emd4600.github.io/Spore-ModAPI/_source_code-_simulator.html

Added the following classes:

  • Terrain::cTerrainShaderMgr
  • Graphics::cBufferDraw, a convenience class that can be used to draw rectangles (for example, to draw textures)
  • Graphics::RenderStatistics
  • Graphics::cImageDataRaw

Improved the following classes:

  • Terrain::cTerrainSphere and Terrain::cTerrainSphereQuad, both with many rendering functions that can be detoured.
  • Simulator::cCelestialBody can be instantiated now
  • Graphics::ITextureManager, now it's completely finished!
  • Graphics:I:RenderTargetManager
  • Terrain::cTerrainStateMgr::TerrainTextures

Added new functions:

  • Many functions in the Terrain namespace, related with rendering.
  • App::cViewer: SetViewWindow(), SetViewOffset(), SetViewport(), SetPerspectiveProjection(), SetParallelProjection(), Dispose()
  • Graphics::Texture: IsLoaded(), GetLoadedRaster()
  • Simulator::cBadgeManager: AddToBadgeProgress()
  • Simulator::cPlanetRecord: GetPerihelion()
  • Simulator::cSolarSystem: LoadBinaryStar(), LoadAsteroids()
  • Simulator::cStar: GetStarType(), IsBinaryStar(), IsStarOrBinaryStar(), GetName()
  • Math: IntRectangle