Jump to content
  • Advertisement

Edgar Reynaldo

Member
  • Content Count

    39
  • Joined

  • Last visited

Community Reputation

117 Neutral

About Edgar Reynaldo

  • Rank
    Member

Personal Information

Social

  • Github
    EdgarReynaldo
  1. Edgar Reynaldo

    Fog of war (large texture overlay?)

    I'm surprised no one mentioned this, but something you could try is to keep a history of where the player has visited, and fully redraw the light over a regular screen sized texture. You could use a deque, and erase 'old' data. Instead of storing the result, you store the process which leads to the result. My 2c.
  2. Edgar Reynaldo

    Allegro Lives! Try it today!

    Has anyone tried the example programs? There are 127 different example programs that come with my binary distribution. Some need the command line, but many are stand alone. Just download the binaries and run the RunA524Examples.bat file to setup the runtime environment. You'll be placed in the examples directory by default. If I could get at least 3 different people to try allegro, that would be awesome.
  3. Edgar Reynaldo

    Recommendations on rolling your own tech

    If you want low level, try Vulkan. 900 lines for a triangle. Next up the chain is OpenGL, DirectX, etc... Both take lots of setup and learning to use by themselves. Next up is Allegro, SDL, SFML, etc.... They provide an easy interface to use OpenGL and DirectX as well as lots of different niceties. I wouldn't suggest going any lower level than this. Above that are Engines and Frameworks like you've been using. Ogre3D, Unity, UE, etc.... These are high level libraries with specific pros and cons I'm not familiar with. You've already gone this route, and you want to learn more, so I would suggest moving down a level. Libraries like SDL, Allegro, SFML, etc... let you use OpenGL and DirectX alongside your application, so you can learn it as slowly or as quickly as you like. Studying these libraries can also give you good ideas on how to implement lower level programming. This is what I would recommend. I recommend you try out binary example programs from each library you are considering. I provide binaries with examples, demos, and tests included for Allegro 4 and 5 and you can find them here : Allegro Lives! Try it today! EDIT Actually, I should also mention things like GLEW and GLUT, which give you quick and easy ways to get going with OpenGL, but I think ultimately they will limit what you can do.
  4. Edgar Reynaldo

    How to enable scripting in my engine

    There's lots of options. Check out this SO thread on the topic : https://stackoverflow.com/questions/145270/calling-c-c-from-python
  5. Edgar Reynaldo

    Allegro Lives! Try it today!

    Blink and you miss a decade or two anymore these days.... Here is Allegro 4 described on the allegro wiki : https://wiki.allegro.cc/index.php?title=Allegro_4 Here is the website for modern day Allegro 5 (and 4 as well) - https://liballeg.org/index.html Allegro 3.X as you knew it developed into Allegro 4. Allegro 4.2 was the last version to support DOS. After that all the assembly was removed (or at least difficult to re-enable) and Allegro 4.4.2 was the last stable version of Allegro 4 that was released. Allegro 4.4 saw the integration of the separate AllegroGL library into a supported addon along with logg, loadpng, and jpegalleg. After that Allegro development moved to the unstable 4.9 branch, which was the precursor to Allegro 5 proper. It completely integrated OpenGL and DirectX into its library. Modern day Allegro 5 supports DX and GL directly alongside allegro code. It provides hardware acclerated bitmap drawing, transformations, blenders, shaders, primitives, and support for vertex buffers and FBO. On the other side of allegro you get event driven input from keyboard, joystick, mouse, and touch API support. There is support for true type and bitmap font drawing, as well as multimedia support for bmp, jpg, png, tga, and support for more image formats. Supported video formats at this time are .ogv and audio supports .ogg and .wav. Allegro's build system is cmake, and cmake-gui makes it super easy to configure and build allegro these days if you don't want to use pre-made binaries. Welcome to 2018. Give allegro a try, it's fun! It's a cool breeze on a summer day... My binaries come with pre-built examples, demos, tests, and more. They're dynamically linked and the dlls are in a different directory, so run the script that comes with them to setup the proper environment to run the examples. Or just move the examples or dlls. I did this to save space in the archive. Unoffical Allegro 5 binaries for Windows
  6. Edgar Reynaldo

    Allegro Lives! Try it today!

    Allegro 5 has changed significantly from Allegro 4. They are totally different libraries. They both do the same thing, but go about it in seriously different ways. Allegro 4 is no longer under development, so you'd be on your own if you wanted to do the DOS / Rhide / DJGPP thing. But AllegroGL is one of the only ways to get hardware accelerated graphics under DOS.
  7. Edgar Reynaldo

    How to enable scripting in my engine

    While I love getting down and dirty with code, there's something to be said about higher level languages. I would much prefer Ruby or Python over LUA. Does anyone here have any experience binding them to C++?
  8. Edgar Reynaldo

    Recommendations on rolling your own tech

    Personally I've used Allegro for over a decade, and it lets me do everything I want to without getting in the way. If you're looking for a lower level API with good documentation and lots of freedom, Allegro 5 is a good choice. I can't speak for other libs I've never used. You can use OpenGL and DX right alongside allegro, and there is support for shaders. https://liballeg.org . You get hardware acceleration, multimedia support, and event driven input, along with filesystem and archive support. I would warn you though, that SDL, Allegro, etc... are all pretty low level. You're going to be missing a lot of functionality that comes from an engine or a framework. I've been developing my GUI library and extensions to allegro for a while now, and there's still plenty I would add.
  9. Edgar Reynaldo

    How to enable scripting in my engine

    I'm interested in this topic as well. I'd like to add Python or Ruby scripting to my GUI library. PyBind11 and SWIG seemed like natural choices to make the connection between C++ and the scripting language but I haven't really had time to explore these options much. Basically I just need something to make the bindings without generating a giant mess. I don't really like LUA much. Too much like assembler code with all the pushing and popping junk on the stack. LUA lacks the high level constructs I want in my scripting engine.
  10. Edgar Reynaldo

    Allegro Lives! Try it today!

    @Valach Sorry I didn't see your reply it was hidden underneath ads. Tomasu's spam assassin nuked some pages I had made and I haven't recreated them yet, I've had other problems with the wiki too, but I should be able to edit again. I re-made most of that page a while ago. But the links at the top lead to empty wiki pages. If your zlib is named differently, by all means pass a different name to the linker. Same goes for other libraries. You can see my full compile guide for Allegro 5 on my website here : http://members.allegro.cc/EdgarReynaldo/BuildA5.html Then follow the setup for CB with the appropriate libraries and directories specified.
  11. This should all be a simple matter of vector addition. if (player.WalkRight() || player.WalkLeft()) { double sign = player.WalkRight()?1.0:-1.0; player.acceleration = sign*camera.RightVector.Normalize()*(player.WalkForce()/player.Mass())*SecondsPerFrame(); } /// Repeat for up/down and forward/backward ///... Now change the players velocity player.velocity += player.acceleration; player.position += player.velocity;
  12. Edgar Reynaldo

    Allegro Lives! Try it today!

    The forum is maintained by Matthew Leverton. Suffice it to say, he's been quite busy with RL. You can reach him by PM on allegro.cc. Which manuals are you referring to? I have two up to date manuals for Allegro 4.4.3 and Allegro 5.2.4 in CHM format. https://bitbucket.org/bugsquasher/unofficial-allegro-5-binaries/downloads/Allegro443.chm https://bitbucket.org/bugsquasher/unofficial-allegro-5-binaries/downloads/Allegro524.chm You're very welcome. Stop by the forums and say hello!
  13. Edgar Reynaldo

    Allegro Lives! Try it today!

    Historically (I'm speaking of a few years ago) the Raspberry PI port worked. I don't know what happened, but newer models versions of the PI totally broke the graphics drivers. It was building on the PI since Trent G ported it to PI in 2013 ( https://www.allegro.cc/forums/thread/611802/975070#target ) . As of the beginning of the last year it was actually working, and working pretty well on the PI 2 and 3 for martinohanlon : ( https://www.allegro.cc/forums/thread/616673/1027519#target ) . He made a complete game called Mayhem 2 ( https://github.com/martinohanlon/mayhem-pi ) . @Chris Katko Weren't you involved in a thread about issues with the PI 2 and 3 being totally slow? Do you remember what the issue was or the thread where we discussed that? Here it is : https://www.allegro.cc/forums/thread/617378 and the issue on the rpi forums https://www.raspberrypi.org/forums/viewtopic.php?t=191791 Here's what he came up with for possible solutions : https://www.allegro.cc/forums/thread/617378/1037321#target
  14. Edgar Reynaldo

    Should timers in an engine be on separate threads?

    In my GUI library I have a separate thread for each timer, but there is rarely more than one. The timers emit events, which can be caught by anyone listening to the timer. Then you simply update or call back or whatever you want based on the seconds passed per tick. The allegro game programming library uses a single thread to manage all timers, but like I said you rarely need more than one to three timers, and you can always base it on the least common factor of the three to achieve the same thing.
  15. Edgar Reynaldo

    Allegro Lives! Try it today!

    Hello all! I don't post much here, but I am an active user on the allegro.cc forums. I go by the same name there. I'm an 11 year veteran programmer in C and C++ and for almost all of that time I have been using Allegro in its various forms. I have to say, it's a great little library, and lets you do so much with little to no effort. For the past few years I have been compiling unoffical Allegro binaries for both legacy Allegro 4.4.3+ and modern day Allegro 5.2.4+. My binaries include dynamic debugging executables of all the example, test, demo, and tool programs that come with Allegro, unlike the official binaries, which only come with libs and headers. I provide a CHM manual for both versions of Allegro that makes it super easy to read the fine manual like every good programmer does. I'm writing this post because I want everyone to know that allegro development has NOT stopped, and that modern day Allegro 5 gets you up and running with HWAccel graphics, event driven input, multimedia and more. You can see the latest release of Allegro 5.2.4 here : https://www.allegro.cc/forums/thread/617292 You can get my binaries for Allegro 4.4.3 and Allegro 5.2.4 in this thread : https://www.allegro.cc/forums/thread/617424 They were built with the MinGW-W64 compiler using GCC 8.1 . You can find a link to the compiler on my thread, as well as links to the binaries, and the chm manuals. Download the binaries and try the example and demo programs today! You'll be amazed at what Allegro can do for you. The official website for Allegro is https://liballeg.org/ . You can catch me over at the allegro.cc forums almost anytime, and if you have comments or questions, please ask away, whether it's here or there makes no difference. Edgar Reynaldo
  • Advertisement
×

Important Information

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

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!