Page 2 of 4 FirstFirst 1234 LastLast
Results 11 to 20 of 37

Thread: Prometheus News

  1. #11
    PGD Staff code_glitch's Avatar
    Join Date
    Oct 2009
    Location
    UK (England, the bigger bit)
    Posts
    933
    Blog Entries
    45
    'load sounds' that is on its way. Its already possible to do so with the current sdl_mixer based release of Prometheus_Audio but has high memory usage as it loads the entire sound to ram... Textures from stream is partially implemented since it can load from Sdl surfaces in memory with the Image.LoadFromSurface() procedure and collision functions is a neat one I did not think of yet (weekend coding perhaps) once the bugs in my new opengl code and memory optimisations are sorted.

    In terms of the engine you mentioned, it is not really direct competition since Prometheus or PrometheusLib (full name) is not an engine in itself but a colelction of data types, functions and procedure much like sdl to make coding a lot easier whilst retaining the best flexibility. However, one of my main focuses is on performance which is usually improved on every revision. (ran some benchmarks a while back here: http://www.pascalgamedevelopment.com...c-benchmarking but might I add we are now 15 revisions later. Unfortunately I am in the process of writing the documentation so it may be cumbersome to pick up although nearer the start of the project I wrote this article which may give you a feel of what prometheus aims to achieve for making coding easier: http://www.pascalgamedevelopment.com...brief-overview

    however, the last link is seriously old and considerably slower it gives a good rough idea on the project...

    Hope this helped you in some way and since I am getting quite a bit of free time expect many new releases in the next few weeks. Major one coming up this weekend.

    PS: Do NOT use the latest release of prometheus, it is riddled with bugs as meego experimentation revealed... I would revert to r37 or around there until I commit the next revision. Almost forgot, due to my over-zealous linking of external libraries prometheus binaries are around 700kb but use 1-4 megs of ram for simple applications... If you are planning to run this on am Amstrad you may encounter problems. Although I doubt they have opengl anyways

    EDIT: scratch that going back revisions, new revision out wed-thur. I'd recommend waiting it out until then if you can XD
    I once tried to change the world. But they wouldn't give me the source code. Damned evil cunning.

  2. #12
    Well I will wait for a stable release. There is a dead game engine which may come handy for you S2DL for making game states engine and collisions.

    Goodluck!

  3. #13
    PGD Staff code_glitch's Avatar
    Join Date
    Oct 2009
    Location
    UK (England, the bigger bit)
    Posts
    933
    Blog Entries
    45
    Man looking at that makes me grin - I have the bases covered from other engines in Prometheus. Heading towards a stable release soon by the looks of it (I reckon around r65 or so).. At the moment, its mainly bug fixing since I removed a LOT of sdl garbage for OpenGl so now everything is like wtf I was using that sdl resource now its gone... So its along the lines of whipping up some super simple test programs like this:
    Code:
    program TestApp;
    
    uses
        Prometheus_Vid,
        crt;
    
    var
        Dat: Image;
        c: Int64;
    
    begin
        PrometheusVid_Start();
        CreateWindow(800, 600, 32);
        
        UpdateWindow();
        
        Dat.Load('Data.png');
        
        c := 0;
        repeat
            c := c + 1;
            Dat.Resize(c, c);
            Dat.Rotate(c);
            Dat.Draw(110, 110);
            UpdateCanvas();
            ClearCanvas();
            delay(10);
            until c >= 1000;
            
        writeln('DONE');
    end.
    Lucky prometheus makes them short XD. Oh and cheers for the pointers to that source - some interesting stuff in there that may just find its equivalent functionality added to prometheus somehow... And thanks for the luck - will definitely need lots of that too.

    If you're going meego, perhaps look into Zengl. From what I have heard that will compile on just about anything with a CPU and a decent OS (not to say anything it doesnt compile on yet is not decent) if you don't mind the complexity. Otherwise Prometheus could handle your basic functionality but multitouch is one I need to implement. Might be difficult though, since current event handlers are sdl (under I re-write them haha) and that is not multitouch

    cya round on the forums I guess. Back to work time.
    I once tried to change the world. But they wouldn't give me the source code. Damned evil cunning.

  4. #14
    PGD Staff code_glitch's Avatar
    Join Date
    Oct 2009
    Location
    UK (England, the bigger bit)
    Posts
    933
    Blog Entries
    45
    Still not many prometheus users, but I use it so I might as well publish my code... Just thought I'd let the community know of some upcoming features in prometheus:

    -Layer & Tile properties in Map variables
    -Implementation of all variables in Map variables for full support
    -A new XFont which pre-renders characters from a TTF file for that extra speed boost! YAAA! Good thing here is we can do it all on the fly so we don't need a conversion utility outside your program, although I can make one if required
    -In order to get s very small speed boost, a cache system is being added to Maps so that if your data reads 5 5 5 5 5 5 5 Prometheus only searches tilesets once rather thatn 7 times, although it purely depends on the map... Although the next step is to render the same tile everywhere: Ie. All tile code 5 rendered then 6 then 7 rather than sequentially by position. This, of course, will have switchable modes.
    -Sdl code is being phased out some more, and hopefully will now be removed from resource loading in favour for code based on andrus amazing zengl, window code to follow.
    -Extensions to the window creation system will let you have full screen, resizeable, named, iconed and themed windows with/without borders and etc...
    -And last but not least I may release a snapshot of the new OpenAL Prometheus_Audio depending on whether the bugs get fixed.

    So all in all, a dabble more than your regular update, and in my mind a well earned refresh for Prometheus. All this in the next few days to 2 weeks at the latest. Hoorah!
    I once tried to change the world. But they wouldn't give me the source code. Damned evil cunning.

  5. #15
    Co-Founder / PGD Elder WILL's Avatar
    Join Date
    Apr 2003
    Location
    Canada
    Posts
    6,107
    Blog Entries
    25
    Quote Originally Posted by code_glitch View Post
    Still not many prometheus users
    I keep telling you... documentation...
    Jason McMillen
    Pascal Game Development
    Co-Founder





  6. #16
    PGD Staff code_glitch's Avatar
    Join Date
    Oct 2009
    Location
    UK (England, the bigger bit)
    Posts
    933
    Blog Entries
    45
    Oh yes, that thing... Its getting there. According to the pascal doc generator thing I need to make an XML file? At the moment, documentation covers 15% of video, so I'll try and get it up to the 80s or 90s by the next few days...

    Aside from that, implementation of Prometheus_Video is swelling quite rapidly now so thats some good news at least. Especially looking forward to the fonts improvement since It seems to be 10% slower than anything else Perhaps I'll commit that to SVN first.
    I once tried to change the world. But they wouldn't give me the source code. Damned evil cunning.

  7. #17
    Yo! So what is going on inside the development? No fresh news and I hope there is some tasty news about Android part.

  8. #18
    PGD Staff code_glitch's Avatar
    Join Date
    Oct 2009
    Location
    UK (England, the bigger bit)
    Posts
    933
    Blog Entries
    45
    Funny you should bring it up gintasdx, I'm scheduling (or hoping to) release a new major revision. Recent updates include:

    -Basic particle effects
    -Marginally lowered RAM & Memory leaks
    -Bug fixes for drawing and everything else, a few flaws where found during LD20 and they needed to be fixed.
    -Super font type postponed due to it being slower then SDL defeating the point
    -Android will most likely need a slimmed down revision - this is currently R&D and testing is on the x86Android project since procuring android hardware has been harder than expected.
    -Touch support (single point) is 'supported' by SDL, multi-touch would be nice and is planned for when SDL event procedures are re-written in prometheus_core. Better performance expected/
    -Documentation improvements, about 40% of everything (literally) done now. Getting there.


    So in general progress is being made, plans to expand the tweakability are there but not yet high priority, phasing out SDL for all but resource format loading is underway and should you not need to load a million formats under the sun, I'm looking at specifics. Also, interoperability with OpenGl and SDL directly is also improving.

    Hope this posts since I've been having login issues with PGD lately...
    cheers,
    code_glitch
    I once tried to change the world. But they wouldn't give me the source code. Damned evil cunning.

  9. #19
    PGD Staff code_glitch's Avatar
    Join Date
    Oct 2009
    Location
    UK (England, the bigger bit)
    Posts
    933
    Blog Entries
    45
    Here we go for another update... After a decent chunk of coding in the last 24 hours, progress as it stands:

    Prometheus_Vid in SVN is still not stable.
    Window handling is not done by SDL any more... For X11 systems anyway. Working on the Win32 fad
    Resource loading will no longer happen with SDL thanks to the new IDF (Image Detection Framework) which is a fancy name for image format detection and launching appropriate loading procedures... Which once implemented should mean the end of the SDL inclusion in Prometheus_Video at last, hooray, giving you a few MBs of your memory back and a big speed boost (around 30% at a guess).

    That is, once OpenGl starts rendering correctly again to the new window management...

    Prometheus source structure is changing so you it will have a Prometheus\ folder in Src\ rather than Video, Core and Audio directly which can be annoying on large projects.
    Prometheus_Version module will likely NOT be in the next release since I have yet to format PDFF (Prometheus Data File Format), PDTF (Prometheus Data Transmission Format - yes, Prometheus will soon do networking ), PMFF (Prometheus Meta File Format), PEDF (Prometheus Encrypted Data Format) and lastly PCDF (Prometheus Compressed Data Format) which will provide some interesting developments in the next month or two... And yes, Prometheus will still support other data formats, but sometimes you want high speed, on the fly data processing or you want to reduce the number of resource files you have right? And thats why all you need is a Prometheus File packing tool and you're set to go.

    Warning: I would not recommend using PEDF for sensitive data - I am no cryptology expert, it might keep the end user tweaking settings etc... But it is easily reversible/brute-forceable despite the fact you can have anything up to a 255 character ASCII key (thats 255^255 possibilities), its a simple cipher

    Oh, and androidx86 is not playing nice with anything I try to run it on... Not mention I have yet to figure out the compiler first so check in in the next 1-2 months for an update on that. Meanwhile, I'll be rewriting management for X11, Win32 and perhaps looking for a person lucky enough to have Mac to test my Mac implementations of it... Unless it uses X11 and is compatible with linux X11 code. Which, knowing Apple, I doubt somehow.

    All of this reminds me... I'll have to document all this too now :/
    I once tried to change the world. But they wouldn't give me the source code. Damned evil cunning.

  10. #20
    PGD Staff code_glitch's Avatar
    Join Date
    Oct 2009
    Location
    UK (England, the bigger bit)
    Posts
    933
    Blog Entries
    45
    A little bit more of a progress update:

    The old Prometheus_Vid naming convention is GONE! We now have 'modules'. PM_Window for example, pertains to controlling your window, size, colour depth, name... PM_Utils has your StrToInt, StrToReal, Pause etc... That way, only include what you need.

    Window management has been written from the ground up as well as event handling, so far its X11 only but this weeks schedule should see WinAPI support too
    If you prefer to use OpenGl instead of Prometheus, you can do so - Prometheus sets up an OpenGl context on your OS for you, image loading (PNG first) is also sheduled for the next few days, so it will give access to your Image.Load, Image.Rotate etc.
    Memory usage for window management is down from ~7mib to 5.9mib
    No external dependencies - ie. libsdl (dlls on windows)
    Executable size is down to 561KiB for a basic implementation, loading times follow suit as well as CPU usage. An OpenGl context 640x480 32BPP has plenty of space in 8mb ram and 10mhz cpu

    Thats is so far, Mac support is scheduled - once I get a good VM or something

    And a quick sample program as it looks now:
    Code:
    program TestApp;
    
    uses
        PM_Window,
        PM_Input,
        PM_Utils;
    
    begin
        CreateWindow(640, 480, 32);
        SetWindowTitle('Test Program');
        repeat
            ClearCanvas();
            GetInput();
            UpdateCanvas();
            Pause(25);
            until IsClose();
    end.
    I once tried to change the world. But they wouldn't give me the source code. Damned evil cunning.

Page 2 of 4 FirstFirst 1234 LastLast

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •