 |
|
Home |
Forum |
S.P.Engine Wiki |
HLC Games |
API
|
| Welcome to the SoftPixel Engine |
Welcome to the homepage of the SoftPixel Engine, a high-level real-time 3d engine written in C++ for Windows and Linux.
It is designed for writing 2d- and 3d games and graphics applications.
You will see the performance and the big collection of functions for rendering 3d worlds and drawing
primitives or complex 2d objects.
There is a wrapper for PureBASIC and BlitzBasic.
Look at the features to see the performance!
(additional developers desired)
|
| News (more...) |
15th November 2009:
The SoftPixel Engine Wrapper for BlitzBasic by T-Team version 1.0 has been released:
The first version of the third party wrapper for BlitzBasic by T-Team is now available.
Take a look at the official worklog on the forum.
22th October 2009:
The Toolbox has been uploaded:
The Toolbox is a small package including the ModelFusion function, a C++ class to fusion two models/ meshes.
This function is a part of one of my current projects: a first person shooter. Because this is a very useful technique
I want to integrate it in the SoftPixel Engine for the next releases. But it is still incomplete. And this is the reason
to upload it. In the Toolbox is a detailed description of the idea of this algorithm.
If anybody think he could solve the problem or fix some bugs please download it and try your best :-)
19th October 2009:
The SoftPixel Engine 1.8 beta has been released (over 75.000 LoC)
The following parts have been redesigned: File system, Sound device, Script loader, Animation, Network, Object transformation handling.
There is already again a new standard model: the TorusKnot. (There is yet another new model type but currently not implemented: the IcoSphere).
With changing the upper called parts and classes the engine became more object orientated and more flexible.
The most interesting thing is that the engine got the status of a cross-platform project which is now running on Windows and Linux.
Because so many parts have been redesigned and changed it is just a beta version but released to find and fix more bugs;
use the community to discuss with.
News in brief:
- GNU/Linux support (Finally the engine is platform independet and running on Windows and Linux)
- Sound system 3.0 (Now the sound device is choosable; current devices: WinMM and Dummy)
- Network system 2.0 (Finally the network system works fine; using UDP protocol)
- Direct3D9 hardware buffers (Now the engines is using the hardware vertex- and index buffers with Direct3D9)
- More flexibility (The redesigned File-/ Animation-/ ScriptLoader- and TreeNode classes allows more flexibility)
14th October 2009:
The Doxygen documentation has been updated to the
next release version 1.8 - which is going to be relased in the next days - as a preview.
On the HLC Games Board there is
an introduction to the update from 1.7 to 1.8.
20th September 2009:
Today I achieved the first Linux alpha-version.
18th September 2009:
Current work report:
- Porting the engine for the first GNU/Linux support
- Redesigning TerrainSystem with GeoMIPMapping and QuadTrees
- LOD (Level-of-Detail) meshes
27th August 2009:
A new forum has been created on the HLC Games website.
This forum is complete in english for international discussions around the projects of HLC Games such as the SoftPixel Engine.
Finally no longer commercial popups or something else =)
...
|
| Easy to handle |
The SoftPixel Engine is very easy to handle such as the getting started example shows. With one function you can create
the following 'primitive' objects:
cube, cone, cylinder, sphere, icosphere, torus (ring), torusknot, pipe, spiral, disk, plane,
tetrahedron, cuboctahedron, octahedron, odecahedron, icosahedron, teapot ("Utah" teapot), supershape.
It is also very easy to use the virtual-reality. You can use a 3d glasses with the red-/ and the green glace.
Write applications with the simplicity of Basic languages but the power of C++ and OpenGL!
|
| Getting started |
Getting started with a very small program (C++):
// SoftPixel Engine - Getting started
#include <SoftPixelEngine.hpp>
using namespace sp; // Main namespace
int main()
{
// The softpixel-device opens the screen (windowed screen / fullscreen are possible)
SoftPixelDevice* spDevice = createDevice(video::DRIVER_OPENGL, dim::size2di(640, 480), 32);
video::VideoDriver* spDriver = spDevice->getVideoDriver(); // Video driver for renderer operations
scene::SceneManager* spSmngr = spDevice->getSceneManager(); // Now we can render 3d scenes
UserControl* spControl = spDevice->getUserControl(); // Now we can check the keyboard- and the mouse input events
scene::Camera* cam = spSmngr->createCamera(); // Creates a camera to see our scene
scene::Light* light = spSmngr->createLight(); // Creates a light (default: Diffuse light)
spSmngr->setLighting(); // Activates the lighting
scene::Entity* object = spSmngr->createModel(scene::ENTITY_TEAPOT); // Creates one of the 16 standard objects
object->setPosition(dim::vector3df(0, 0, 2.5)); // Sets the object position (x, y, z)
// The main loop will update our device
while (spDevice->updateEvent() && !spControl->keyDown(KEY_ESCAPE))
{
spDriver->clearBuffers(); // Clears the video buffer
spSmngr->renderScene(); // Renders the scene
object->turn(dim::vector3df(1, 1, 1)); // Rotates our object
spDriver->flipBuffers(); // Swaps the video buffer, so we can see the current frame
}
deleteDevice(); // Deletes the device context and closes the screen
return 0;
}
// END-OF-LINE
|
|