Jump to content
  • Advertisement

mixmaster

Member
  • Content Count

    128
  • Joined

  • Last visited

Everything posted by mixmaster

  1. mixmaster

    vortxGE : Threads

    After reading lots of tech papers/blogs on C++11 threads I redesigned the way the engine handles threading. Developers can now change threads manually per Scene, each pipeline : Move, Optimise are now batch threaded for better performance. after lots of testing this approch seems to work better under heavy load and being scalable its my new method of choice. Here is some code from the engine that creates threads based on nodes.void lsNode::MoveThread( lsScene* scn, lsOpenGL* opengl, double delta ){#ifdef VORTX_DEBUG_NODES cout = threads )||( ptr->getNext_node() == NULL )) {#ifdef VORTX_DEBUG_NODETHREADS // debug cout MoveThread( scn, opengl, delta );}
  2. mixmaster

    vortxGE : Threads

    I should also add I have my event system working with the new threads. All core events are on a scene by scene basis, e.g. if a scene node wants to delete itself because its life is over, it must add an event to do so. Game events will work on a Level basis.
  3. mixmaster

    My Business

    Well I've been away from GameDev.net for what seems like forever. It has been a hard road but I'm up and running with the new business. First App is on the AppStore and I created a Online Shop for my site too. The plan is to start making some money to fund future Games using my engine, once the engine is done I'll release it free. With any luck this means jobs for others and I get back to coding full time. All this hard work is taking me away from what I love! CODE www.leestripp.com Cheers Lee
  4. mixmaster

    My Business

    Thanks ! For some reason I think I'll need all the luck I can get :-)
  5. mixmaster

    C++11 Threads

    I was just brushing up on some C++11 concepts the last few nights (looking for parts of the engine to improve) and noticed quite a few people struggling with threads inside classes, as in using a class object as a thread. Some of the responses were so confusing to say the least. Also they were struggling with std::cout while threads were running. So here's some example code of these problems all in one. I hope it points someone in the right direction. Files: lsThread2.h / .cpp lsThread.h / .cpp core.h / .cpp main.cpp// file : core.h#ifndef cppThreads_core_h#define cppThreads_core_h#include #include #include #include using namespace std;/*! Base class Used to start some lsThread objects. */class core{public: core(); virtual ~core(); void run(); void logText( const string& val, int tid ); private: int nr_threads; mutex m;};#endif// file : core.cpp?#include "core.h"#include "lsThread.h"core::core(){ nr_threads = 10;}core::~core(){}void core::run(){ cout
  6. mixmaster

    C++11 Threads

    Yes its C++11, I might add some more comments to the code soon if anyone wants me too.
  7. Just setup 2 camera's, do your culling based on one cameras frustum (or your method) and use the second camera as the viewing camera. that way you can move the second camera around and see the results better. Does this make sense?
  8. mixmaster

    Trends.

    I agree, I feel its the big game companies heading down this path as they can afford it. But have some faith in the small Indie developers still producing some amazing games that work out of the box, no connection required. I really think the large companies have lost their way, so removed and unaware of what the gamer really wants. And yes I know we want it all :-)
  9. mixmaster

    Still Alive

    New business up and running now: check it out.   www.leestripp.com
  10. mixmaster

    Still Alive

    I have been very busy setting up the new Business, sadly this meant I couldn't work on vortxGE. I have created 3 other Apps for iPhone/iPad and Mac OS X. This has been taking up all my time. I'm also in the middle of creating a new website for the Business : http://www.leestripp.com still under construction. I'm just adding this entry to say I will be back soon with some vortxGE updates. Cheers Lee
  11. mixmaster

    Still Alive

    Thanks buddy!
  12. mixmaster

    vortxEDIT : video

    My first attempt at a video with audio. wow shocking :-) [media='1280x720'][/media]
  13. mixmaster

    vortxEDIT : video

    Thanks BR, been so busy lately, would love to make more.
  14. mixmaster

    Full Time Indie

    I like your idea of setting a normal working week, something I don't do myself but think I should. I hope all goes well, looking forward to you updates.
  15. mixmaster

    Possible iPhone / iPad Development

    Well there is always Windows 8 Metro. No need to jump ship, but if you think its the right thing to do as I did I would highly recommend getting an iMac and learning Xcode. It will make life easier in the long run. If I can help in anyway just send me a PM.
  16. mixmaster

    vortxGE : Update

    Started work on the Game level system, for this I needed to add hierarchy support to the Controls and also get that working in vortxEDIT. A recap on Controls in vortxGE, a control is a building block inside the engine for anything from a Viewer, Composite, Game Levels and so on. I wanted to be able to stack Levels on top of a LevelLoader control for example. This is all done and tested, as in the linking etc... vortxEDIT Now has support for loading Mesh assets and also simple Object adding. In the image you can see I was playing around with adding existing cubes but this could be any object I export from Blender. I also did even more code cleanups to do with Memory management. No ARC used anymore.
  17. mixmaster

    Allocating large arrays in .NET

    Great read and some good references guy's. Keep up the great work.
  18. mixmaster

    vortxGE : Level Loading

    Here is a little insight into how I work, I always plan out major systems on paper before I ever start coding them, I don't go overboard with tones of detail because this is just off the top of my head. Things may change as I write the code and I make changes to this document as I go. If I don't do this stage I find it takes 10x longer to write the code. This also gives a great reference for later Product documentation. Cheers Lee Level Progression Games How level loading works In vortxEDIT, create a LevelLoader control and as many Level controls you need for your game. The loader should hold an lsViewer that displays lsLevel loading progress or whatever you like, as long as the user knows something is loading. A lsLevel control holds a filename of the vortxEDIT Level project to be loaded and a pointer to the lsGame instance needed for the level data. GamePlay controls are created by the game developer and trigger game end, restart and set scores in the lsLevel. An lsGame control is used to hold the current lsLevel loaded data and gameplay pointer. You only need one lsGame control, the lsLevelLoader should create this control and pass it to lslevel classes. Create your Level files using vortxEDIT as single projects containing everything you need for that levels game play, other in-game objects can always be added at runtime. Sandbox Games How Sandbox works lsSandBox class manages many lsSandBoxZone classes. Because a sandbox is really one massive level it should control lsSandBoxZone loading and releasing data into the lsGame class. An lsSandBoxZone controls all its asset loading and releasing in turn. Using zones should give greater flexibility to the developer and his/her target platform. Smaller zones can leave a smaller memory footprint. LsSandBoxZone's will be triggered by distance from the player/camera and must dynamically add/remove data from the lsGame class depending on the distance. This structure looks like the lsLevelLoader structure but it in no way works the same way. Keep this in mind when you create your lsGamePlay subclass.
  19. mixmaster

    I can die happy now! For realsies...

    hmmm, very interesting read... And as for Gaiiden's post, I might start writing about my design process in more depth rather then using this site just to dump my projects progress :-) I never really sat back and thought about it. Writing insightful posts is not my strong point.
  20. mixmaster

    vortxGE : single code base

    After playing with the IOS engine code base for a while now I was confident I could recombine the 2 engine code bases together.... 4 hours later its all done and working very well, even sorted a small bug when a mesh file was missing and the engine still tried to access its bounding sphere for culling vortxEDIT and iPhone/iPad projects are all under the same workspace now, very nice.
  21. mixmaster

    vortxGE : single code base

    Lots of code cleanup done, Now I'm finally ready to add Project Loading. That will be sooooo nice.
  22. mixmaster

    vortxGE : single code base

    I was about to start work on Load functions when I noticed the new ARC wasn't working well with NSOutlineView, the Items I create had no way of being released when I wanted to clear the view hmmmmm. I cannot find any info on this problem online. So its back to Manual RC, but I just marked files that needed MRC. After changing all code needed I found some strange ARC bugs were all gone, I was getting random Leaks maybe every 10th time I ran the App from my GL controller classes, strange because these bits of code are very simple and seem perfectly fine. After the changes all is well. go figure !
  23. mixmaster

    vortxEDIT : Save

    Been working hard at getting a save project feature working in vortxEDIT. This output will also be used by the Engine to load games Small changes to the asset manager were done. Here is the project file output so far. Just getting the basic elements down. # vortxEDIT v1.0 by Lee A. Stripp # Shaders add_shader light_tex_dn add_shader quad add_shader debug # Assets add_asset texture data/textures/tech_2_2_d.tga add_asset texture data/textures/tech_2_2_n.tga add_asset mesh data/meshes/Cube.vbm # Controls add_composite Composite add_scene Scene add_object Quad Scene add_camera Camera Scene add_pass DR Scene add_viewer Viewer add_scene Scene add_object Scene#Grid Scene add_camera Camera Scene add_light point Light Scene add_object Point#Light#Empty Light add_object Test#Cube Scene add_pass FBO Scene # EOF I have also been working on a saveGameState() function that will save the current state the game is in, a save game if you will.
  24. mixmaster

    vortxEDIT : Save

    And yet another update.. Now showing how I link up any connections that can't be made at scene build time. For example Lights may not of been added to the scene yet and I need to link them to objects etc... [CODE] # vortxEDIT v1.0 by Lee A. Stripp # Shaders add_shader light_tex_dn add_shader quad add_shader debug # Assets add_asset texture data/textures/tech_2_2_d.tga add_asset texture data/textures/tech_2_2_n.tga add_asset mesh Composite#Quat add_asset mesh data/meshes/Cube.vbm # Controls add_composite Composite add_scene Scene add_object Quad Scene (0,0,0) (0,0,0) (1,1,1) Composite#Quat add_camera Camera Scene (0,0,-0.5) (0,0,0) (1,1,1) add_pass DR Scene Camera Camera add_viewer Viewer add_scene Scene add_camera Camera Scene (0,1.7,-7.5) (8,0,0) (1,1,1) add_light point Light Scene (1,2,-5) (0,0,0) (1,1,1) add_object Test#Cube Scene (0,1,0) (0,0,0) (1,1,1) data/meshes/Cube.vbm add_pass FBO Scene Camera Camera # Control Links find_control Composite find_scene Scene find_control Viewer find_scene Scene link_light Light Test#Cube # EOF [/CODE]
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!