1. Hey! Guest! The 36th GMC Jam will take place between February 27th, 12:00 UTC - March 2nd, 12:00 UTC. Why not join in! Click here to find out more!
    Dismiss Notice

POV-ray may help you design better graphics for your game

Discussion in 'Game Design, Development And Publishing' started by Lord KJWilliams, Feb 13, 2020 at 1:53 AM.

  1. Lord KJWilliams

    Lord KJWilliams Member

    Joined:
    Jul 2, 2018
    Posts:
    151
    I think I found a better graphics program to help me design my art for my game. So I want to share it with all of you who looking for a better way to design cutting edge graphics for your game.

    This program is called : The Persistence of Vision ( aka POV-ray )
    And it is available for free... I believe it is compatible with all versions of Microsoft Windows. It is also available for the Mac OS, and Linux. You will have to read more about compatibility issues.

    https://www.povray.org/

    POV-ray is a ray tracing program, and unlike other art programs where you draw your pictures, in this software you program your pictures. The source code for these pictures look very similar to programming C. This means that there is a learning curve when you start using this program. The program comes with a tutorial section and a reference section that explains how it works, as well as many examples that you can also download to see. With this program, you can export .png images into your game, and even combine it graphics from your other art programs to combine to make the presentation you want.

    Ive considered using a similar program called Lightwave 3D by Newtek, but its very expensive ($1k USD for the commercial version ) and probably has a learning curve higher than POV-ray. However, POV-ray uses OpenGL as its backbone from what I have read. You can learn about how to import your own graphic textures to create sophisticated pictures. And still its free. So I wanted to mention this for all of you GMS users who want to advance the graphics of your game, to look more realistic. It takes some time to play around with this program to understand how it works.

    Check out the hall of fame page to see some amazing pictures that may inspire you to help you improve your game graphics. I am considering this for most of my stills and some animated images in my game that I want to design, along with combining it with other non ray traced art to cut down the work of programming the images.

    Check out the website for more information, on the link I have provided above.
     
    Joe Ellis likes this.
  2. BaBiA Game Studio

    BaBiA Game Studio Member

    Joined:
    Jun 20, 2016
    Posts:
    923
    I remember when it first came out, and it was free then too. :)
    I didn't use it much, just did simple shapes with reflective surfaces and lights cast on them.
     
  3. Lord KJWilliams

    Lord KJWilliams Member

    Joined:
    Jul 2, 2018
    Posts:
    151
    You should check out the hall of fame
     
  4. Rayek

    Rayek Member

    Joined:
    Jun 27, 2017
    Posts:
    217
    Wait, what? Why haven't you tried Blender yet?

    Blender is open source, free, and in most respects more advanced and more feature-rich than Lightwave 3D, which used to be (15~20 years ago) one of the top dogs in 3d effects for tv broadcast shows. But due to utter mismanagement on Newtek's behalf, many parts are now severely outdated. Lightwave is split into a Modeler and Layout app (two separate programs), which is still a legacy design decision from the nineties. Development pace is glacial.

    Lightwave used to be quite popular, but nowadays almost no-one (excepting veterans in the industry) in the younger generations is aware that Lightwave still exists. Most haven't even heard of LightWave.

    Blender's architecture is far more modern, offers a beautiful real-time OpenGL viewport, and (sorry) absolutely wipes the floor with PovRay. No comparison possible. It is also by far easier to learn than PovRay, and a quick search online will provide you with thousands of tutorials. Blender is very popular with (indie) game designers.

    Blender is extremely popular nowadays, in particular since v2.8 was released last year.

    Don't bother with Povray. Just get Blender, and don't look back.

    www.blender.org
    forum: www.blenderartists.org
     
    Lord KJWilliams likes this.
  5. Lord KJWilliams

    Lord KJWilliams Member

    Joined:
    Jul 2, 2018
    Posts:
    151
    Actually I have long ago, when it was released as version 2.75 win32 for XP. And at the time it did not provide a support for doing wire frames.
    But now I want something different.

    [/quote]

    Actually in the manual for Blender, which I just read - there is a add-on support for using POV-ray with Blender. So its not a loss to have both
    programs. However, Blender does not support a SWF export feature ( neither does POV-ray ) , which is the only vector file format that I would be able to use , that GMS supports. There is a python script that I found that I can use with GIMP 2.8 ( which I still use ) , that can convert PNG files to SWF files ( it requires SWFTOOLS installed which is still available if you search for it ). Untill Blender has a add-on for that conversion - which I did not find mentioned in its manual , there is no point in getting Blender at all. You might as well use any art program to create a .PNG and use GIMP to do that file conversion process. Blender does not use a script file style like POV-ray, which provides more user defined control ( as I said you have to program ) of the picture rendering.
     
  6. rIKmAN

    rIKmAN Member

    Joined:
    Sep 6, 2016
    Posts:
    5,043
    Damn, I haven't head the name POV-Ray since my Amiga days!
    Why does it specifically have to export SWF files?

    There are quite a few tools / scripts for Blender that allow you to easily export animated 3D models as sprites in various perspectives with preset camers and settings for ortho, iso, top down etc which could easily be used in any engine.
     
  7. Lord KJWilliams

    Lord KJWilliams Member

    Joined:
    Jul 2, 2018
    Posts:
    151
    ( I used to have an Amiga too - I used Deluxe Paint IV for my art )

    Read the section in the online GMS manual about importing non-bitmap sprites, it only supports Flash SWF and Spine ( which has nothing to do with what I want ).
     
  8. rIKmAN

    rIKmAN Member

    Joined:
    Sep 6, 2016
    Posts:
    5,043
    I'm familiar with it, I've used Spine quite extensively with GMS2.

    However my question is why you need to export SWF from a 3D modelling program and can't export and use regular sprites?

    The SWF support in GMS2 is pretty limited and there won't be many (if any?) 3D modelling programs that export SWF (especially not within the limitations GMS2 imposes on SWF files) so it seems you are limiting your options massively - just wondering what the reason is?
     
    Last edited: Feb 14, 2020 at 12:31 AM
  9. Lord KJWilliams

    Lord KJWilliams Member

    Joined:
    Jul 2, 2018
    Posts:
    151
    Ok since you dont get it - in the manual it says :
    And it has an example in the manual that shows that when a .swf file is scaled to a larger size the pixels are adjusted to that size so they do not look magnified as with normal sprites. Thats the advantage of using vector graphics.
     
    Last edited: Feb 14, 2020 at 12:41 AM
  10. rIKmAN

    rIKmAN Member

    Joined:
    Sep 6, 2016
    Posts:
    5,043
    Yes I do get it and I know how vector files work - however I'm no psychic so thought I'd ask to clarify your reason.

    The restrictions put on the use of SWF files in GMS2 (see the docs you keep mentioning for the list of features you can't use) mean that you are trying to find a 3D modelling program that not only exports SWF, but exports them whilst conforming to the rules imposed by GMS2 to allow them to be used.

    It's a needle in a haystack situation and I'd probably start looking at other workflows that will allow you to use vectors if that's the route you wanted to take.

    You can also search the forums for many examples of how finicky the SWF support is where exports that weren't from an exact version of Flash/Illustrator would cause problems, and other vector art programs such as Inkscape not importing or working at all.

    (You'd have to search via Google as the forum search doesn't allow 3 letter words)
     
    Lord KJWilliams likes this.
  11. Lord KJWilliams

    Lord KJWilliams Member

    Joined:
    Jul 2, 2018
    Posts:
    151
    I was beginning to worry and was trying to point out, but the online GMS manual does not change its URL when you change subjects while viewing it
    I will compensate for the limitations, but I am only using single framed stills that I want to zoom in and zoom out, simply display somewhere, but I have no thought for a animation in use yet. An example of a game that I know uses vector graphics ( or something that I would call vector graphics ) is X-COM : Apocalypse, when you view the info files of equipment it shows on one side of the screen of the object in a vector graphic form, like it was drawn with a program like POV-ray. Thats what I want to use my pictures for in my game, in the same application.

    Like this :



    [​IMG]

    Well theres a website called SWFTOOLs that you install a slew of converters , and there is a python script that you can add to GIMP which converts some image types such as PNG to SWF.

    This is what I am going to use :
    http://swftools.org/

    Python Script is here for gimp :
    https://gimper.net/resources/export-layers-to-animated-swf.216/

    I am only going to try this with one image file that is not an animation ( for the time being ), until I decide to use an animation.
     
  12. Rayek

    Rayek Member

    Joined:
    Jun 27, 2017
    Posts:
    217
    Still have my Amiga 1000 and 1081 monitor. And I started my graphics career in Deluxe Paint :)

    Btw, it is possible to run Deluxe Paint V AGA "natively" on Windows:
    https://thecompany.pl/game/Deluxe+Paint+5.2
    (hit F12 for display options)

    Anyway, some options:

    1) Blender's Freestyle SVG renderer will output a SVG vector render (black and white) of your scene/objects.
    https://easyblend.org/html/render/freestyle/export_svg.html
    https://inkscapetutorials.wordpress...xport-to-create-inkscape-editable-3d-lineart/

    This was already possible in v2.73, so you must have missed it in 2.75.

    2) coloured SVG vector files are also possible in Blender via the use of this script/addon:
    https://blenderartists.org/t/svg-output-script/566412

    [​IMG]

    Then convert the generated SVG to SWF using a tool like
    http://svg2swf.sourceforge.net/

    I have not tried this last step myself, nor attempted to load these SWF files in GM. I removed SWF from my workflow ages ago. Too proprietary a format and really nit-picky.

    PS would be nice if GM Studio would support SVG files in its asset workflow. Other engines do, and it is an open format.
     
    Lord KJWilliams likes this.
  13. rIKmAN

    rIKmAN Member

    Joined:
    Sep 6, 2016
    Posts:
    5,043
    Once you are on the right page you need to go back to the Contents tab, find the page in the contents treeview (it'll be bold), then right click and "Copy link address".
    You can then paste that link as it'll be the direct URL to that specific page.

    I'm certain that image isn't a vector image, it looks like a regular sprite rendered from a 3D model which was pretty usual for the time (~1990's).
    I don't think the issue is going to be converting the files into SWF, the issue will be the resulting files not conforming to the limitations GMS2 has put on the use of SWF files. Even editing them manually after conversion so that they import / work correctly might be more time and effort than it is worth, as well as possibly destroying the original image - but that's your call.

    it depends on sprite size, animation length, target platform, intended use etc but I wouldn't rule out regular sprites just yet as if you can use those instead of vectors you are going to save yourself a lot of headaches that may not be necessary.

    Good luck!

    It's on the roadmap but not scheduled, so maybe at some point in the future.
    https://help.yoyogames.com/hc/en-us/articles/360022211472

    I also have my old Amiga's and 1084 monitor! :)
     
    Last edited: Feb 14, 2020 at 2:02 AM
    Lord KJWilliams and Rayek like this.
  14. Rayek

    Rayek Member

    Joined:
    Jun 27, 2017
    Posts:
    217
    I see two different types of assets:
    - a 3d rendered still of a ship/fighter
    - a technical wire blueprint background.

    Neither are vector. Both are bitmap based.

    In a modern version the 3d rendered still could be replaced with a real-time rendered 3d version, and with the current tech it would look much more attractive than that rather old-fashioned looking ray traced image.

    Check out these ships in SketchFab:
    https://skfb.ly/6HxLV
    https://skfb.ly/6HsLz

    These can be tilted, zoomed, viewed from all sides. It is trivial to add a techie looking blueprint in the background.

    Blender 2.8x features a new viewport (Eevee) which allows for this type of quality REAL TIME with a PBR material workflow. Then export your 3d file for use in a game engine that has good 3d support (not possible in GM, or at least not easily, and GM doesn't support a more modern OpenGL feature set, so the point is a bit moot anyway...).

    Or render directly using Eevee (render takes a couple of seconds with Eevee in these cases) which is actually the replacement render engine for Blender's old ray tracer (comparable to Povray).

    Anyway, I see no vector graphics used in your example.
     
    Lord KJWilliams and rIKmAN like this.
  15. Lord KJWilliams

    Lord KJWilliams Member

    Joined:
    Jul 2, 2018
    Posts:
    151
    My Amiga 500's power supply was blown when I accidentally connected it while it was switched on, and the power from the surge suppressor blew the power supply. This was my second power supply that replaced the first one. So the only way I can use Deluxe Paint IV is on my OLD windows 95 system in Cloanto's Emulator which is the only thing I valued from that investment. I wish Commodore Business Machines did not go out business due to its stupid top management decisions, and Jack Tremiel's departure to start Atari Computers that produced garbage machines to compete against the Amiga. Its too bad, I wanted a Amiga 4000. I know that the computer has been reinvented in Europe or somewhere , but its 3 times expensive than a high end Apple Computer.

    Thats where I have to say, that GM Studio needs to make this a major fix in their next version or fix of GMS. Because its extremely limiting, but the reason that I am using it is because of the fact that I used normal bitmaps, I would have to create a series of different sized images to do the scaling right. For instance, I were developing a space flight game like David Braben's Elite ( now refered to as Dangerous in his latest version ), and the video showed me flying towards a rotating cube, from my cockpit point of view, the cube would have to have a file for each of the animation resolution sizes as I got closer. Otherwise the picture would gets pixelated , and distorted . And the amount of work doing each of those animation files would be a time consuming process. Thats just for a cube. I did something like this for a small picture showing a planet. I used Deluxe Paint 2e for MS-DOS - which is nothing like the Amiga version Deluxe Paint IV. There is a pain in the neck conversion process that I had to do. This is what it looks like:

    dp_r62.gif

    I kept this image small so that it wouldn't be a pain to edit the details rotating. The planet was made using a square image of the map, converted to a sphere using GIMP every 5 degrees. So the same problem would exist for any other object I am rotating. I dont know if spheres work well with SWF files.
     
  16. Lord KJWilliams

    Lord KJWilliams Member

    Joined:
    Jul 2, 2018
    Posts:
    151
    It may not be vector graphics, but it can be done in blender or POV-ray. Which is what my point of the post was, so that game developers are not stuck to thinking inside the box all the time for one style of graphics, but allow the use of incorporating two different types of graphics for a game. My discussion of importing SWF files has to do with me and what I want to do, not just a general use of making stills that you rotate or manipulate. My application of SWF goes beyond just a simple use of using blender or POV-ray. I still have to use GIMP to convert the files using those programs and the python script I mentioned in one of my earlier post here.

    Late Edit : I searched and found on Wikipedia , that stated they used 3D Modeling software - but the name of that software is not mentioned in the quote. If I knew what the name was then I would be able to find out if the graphics were vector or not. But I had originally looked at the picture example from X-COM : Apocalypse , and thought it was vector graphics.

    Also the other advantage that the GMS manual points out with SWF files, is memory size of the image. Which if a game was developed for also online, it would save space and time loading on the server side. But I have no idea if that would work. I believe there is more space available and speed ( as in no lagging ) for games that are meant to be played off-line on computers, than online with the imitations of the server and the web-browser type being used.
     
    Last edited: Feb 14, 2020 at 2:42 AM
  17. rIKmAN

    rIKmAN Member

    Joined:
    Sep 6, 2016
    Posts:
    5,043
    They will have used 3D software to create the model and then rendered out a regular 2D bitmap image to be shown in the game.
    They aren't vector graphics, they are regular bitmaps of 3D models.
    Correct, but it also points out that it is more CPU intensive to use vectors so you have to "pick your poison" based on your use case and target platform.
    If it's for PC you generally don't have to worry about either unless you are especially wasteful with resources and basic memory management.
    Images (and assets in general) are stored on the client, not the server - whether from an offline install+update/verification or a one time download - but either way the player has to download files from the server at least once.

    It would be a complete waste of resources to have an online game be using bandwidth to send assets back and forth whilst playing the game, but it should be doing checks to make sure the local copies of the files have not been tampered with.

    If your game involves flying around in 3D then maybe you should look into a proper 3D engine where this sort of stuff is really simple and you could use models like those Rayek posted earlier in the thread with ease.

    As Rayek said it is possible in GMS2, but not easily and is something you could have a basic version of up and running in a proper 3D engine in less than an hour as that's what they excel at and are made for - use the right tool for the job (unless you are after the challenge of doing it in GMS2 of course).
     
    Last edited: Feb 14, 2020 at 3:25 AM
  18. Rayek

    Rayek Member

    Joined:
    Jun 27, 2017
    Posts:
    217
    I one broken A1200, a A600 shell/keyboard, and the A1000
    I posted it earlier in this thread, but try this:
    https://thecompany.pl/game/Deluxe+Paint+5.2

    It's a packaged Amiga AGA emulator with Deluxe Paint V - running it feels as if it is running (almost) natively on a Windows machine.

    I agree, my heart broke when Commodore went bust, and with it the Amiga. Such a shame.

    Sometimes it is smarter to work with the limitations, rather than against them. Here is a simple example I created 6 or 7 years ago:
    http://www.wizzydev.com/animated_2d_planet_concept/

    The planet looks as if it rotates, but it actually does not. A bunch of masked textures which are moved, and each texture in slightly varying speeds, which fools the eyes into thinking it rotates. Of course, it does not. ;-)
    If you wait long enough, the planet's surface and clouds will bleed out, showing how this trick works (a production version would repeat the texture via code and perhaps use an opengl shader effect to create this effect - google it). But this was a very simple demonstration to explain how it works.

    The entire thing is only 500kb. You really don't want to do an animated rotation - not even in SWF using vectors, because it will probably use up too much resources, and won't play as smooth as other methods.

    GM Studio does support OpenGL 1.1, and you might want to look into loading a sphere with a texture instead. Or use tricks such as the one above.
     
    Last edited: Feb 14, 2020 at 3:33 AM
    Lord KJWilliams and rIKmAN like this.
  19. sylvain_l

    sylvain_l Member

    Joined:
    Sep 18, 2016
    Posts:
    707
    ok; you need really to realise a few thing

    GMS2 (at least at my last check - idk if they updated that) only support polylines ! (no spline, bline, and other smooth vector curves); which means that if you zoom enough any of your curves will just look like a bunch of lines; and most important to get "smooth alike" curves you'll have to max the detail (nb of point of your vector import; which could prove to be as heavy as a png at the end or more; don't confuse the size of png and swf files before importing into GMS2 and their size once loaded when your game is running; those are different things; you should check which one is lighter in your case in practice, not assume it because in a different case in a doc someone show one case advantageous to the vector extern file)

    and I'm not even talking about the GMS2 low level of support for other vector things, like gradient, mask clipping, etc... where you have other limitation because GMS2 doesn't support all what's available in svg/swf

    p.s.
    if all your 3D models are only hardsurfaces, well you could manage it; else, I'm pretty sure you'll run into the limitations of GMS2
     
  20. Joe Ellis

    Joe Ellis Member

    Joined:
    Aug 30, 2016
    Posts:
    1,106
    I like the way POV-ray looks, it reminds me of games I played where the background is a flat rendered image but the characters are 3d, like Grim Fandango.
    It's also, if you're looking for that exact look from that era, the perfect program, and new programs probably can't look like that cus they work differently at the core. I think this is a great reference
     
  21. vdweller

    vdweller Member

    Joined:
    Jun 24, 2016
    Posts:
    141
    My initial thoughts on this program were that it is absolutely useless for game development.

    After examining more closely the website and generated images and thinking more carefully about its potential I came to the conclusion that it is absolutely useless for game development.
     
    Last edited: Feb 18, 2020 at 8:31 PM

Share This Page