Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Goombert

1111
Tips, Tutorials, Examples / Re: Multitextured Terrain Example
« on: July 05, 2014, 06:41:59 PM »
God damn Harri, I actually started the original so that I could maybe do a SimCity clone, but you've far outdone me so far.

But anyway, that shit needs some mipmapping and anisotropic filtering, I am going to go cleanup that shit and get it working between OGL and Direct3D.

1112
Developing ENIGMA / Re: Command Line Interface
« on: July 05, 2014, 06:38:19 PM »
Yes, then maybe I am not understanding.

* You can make a BMP, PNG, or JPEG have a transparency pixel, that works for all formats.
* You can remove the transparency pixel when you load, or using a shader and do it every frame. If the former and you go to save a background or sprite, the image will be saved with the transparency removed.
* Bitmaps can be 8 (monochrome), 16, 24, and 32 bits

1113
Developing ENIGMA / Re: Command Line Interface
« on: July 05, 2014, 01:32:25 PM »
Wikipedia has the full BMP spec.
http://en.wikipedia.org/wiki/BMP_file_format#Pixel_format

And GM never had the ability to do it at runtime, but it's possible in Direct3D and OpenGL even with the ffp, but if you want it you're better off writing a shader for it.
http://www.opengl.org/discussion_boards/showthread.php/175741-Colour-Threshold-Alpha

1114
Developing ENIGMA / Re: Command Line Interface
« on: July 05, 2014, 12:39:19 PM »
Uh, yeah, no TKG. 32 bit bitmaps do store transparency, a bmp is just a raw uncompressed lossless dump of pixel data.

That corner transparency option was good for all image formats, because it doesn't actually remove the background color until startup but once it does it does it for the entirety of the execution, which is more optimal than using a shader to do it every frame.

1115
Off-Topic / Re: Game Develop goes open-source !
« on: July 04, 2014, 03:11:34 PM »
Wow that looks really good, glad to see this development. The Linux revolution is upon us.

1116
Yes, Josh Harri is right, zwriteenable was not gm6, it was added to 8.1 at my request, I pm'd Dailly on the GMC.

Now I hadn't actually thought of what Josh said, but I already snuck in a function a while ago that does that.
http://enigma-dev.org/docs/Wiki/D3d_set_depth_operator

These are the constants, they are mapped the same for GL1 and GL3 and DX9.
Code: (C++) [Select]
enum {
  rs_never,     // Always False            D3DCMP_NEVER            GL_NEVER
  rs_less,          // source Z < depth Z      D3DCMP_LESS             GL_LESS
  rs_equal,         // source Z = depth Z      D3DCMP_EQUAL            GL_EQUAL
  rs_lequal,    // source Z <= depth Z     D3DCMP_LESSEQUAL        GL_LEQUAL
  rs_greater,   // source Z > depth Z      D3DCMP_GREATER          GL_GREATER
  rs_notequal,  // source Z != depth Z     D3DCMP_NOTEQUAL         GL_NOTEQUAL
  rs_gequal,    // source Z >= depth Z     D3DCMP_GREATEREQUAL     GL_GEQUAL
  rs_always     // Always True             D3DCMP_ALWAYS           GL_ALWAYS
};

1117
Tips, Tutorials, Examples / Re: Multitextured Terrain Example
« on: July 04, 2014, 03:03:44 PM »
Haha, very nice Harri!

I wonder exactly how Studio handles backwards compatibility of shaders. I say we leave things the way we have them, it's expected for OGL1 and OGL3 shaders to match their relative specs.

1118
Developing ENIGMA / Re: Command Line Interface
« on: July 04, 2014, 02:59:13 PM »
The reason EGM now has superiority for ENIGMA is because ENIGMA still has things like corner transparency that Studio does not. GMX completely removes the option from the format, and ENIGMA incorporates all GM versions.

Supporting EGM is also impossible until we hook up this CLI to read drag and drop action libraries, GMK and GMX store the action data not just by id and subid but they also store applies to and everything so that you can format it out into code.

DND -> GML converters are extremely easy, LGM and the CLI in fact convert the entire event action block to EDL in just 25 lines or so.

Also some commands and flags will be optional, so there will be a flag that tells you the format of the file, and I guess the default will be if you don't specify a format to grab it from the filename.

1119
Developing ENIGMA / Re: Command Line Interface
« on: July 04, 2014, 02:38:19 AM »
Yes exactly TKG, now you can simply pass a file path to it and it can build your game.

I have fixed most parenting and postponed references issues, as well as drag and drop parsing, though there are still a few issues. The biggest now is fonts, I haven't written a converted which chops up their font texture and dices it into ENIGMA glyphs nor have I made LGM write the font texture to GMX yet. And I also have not included a default font, I will discuss this with Josh so we can outline a way of including default resources with ENIGMA. So atm, don't expect any text rendering!

That said, your game crashed after skipping the intro screen, but this may have been due to me testing it prematurely, I did not test it again after completely fixing drag and drop and building the FPS example where DND was also causing other crashes. So it may and may not crash again if you were to build it I have no tested yet.

My biggest concern is all the fucking JDI output, it took 30 seconds to build the game, but it could have done it in half the time if JDI wasn't printing 1.24 GB's of bullshit.

Now I do not officially support building this CLI yet, however I will give instructions who anyway that wants to take a wild canoe ride down that shit creek. Also I have not tested it on Linux yet at all, so don't expect it to work there yet.
1) Open git-bash
2) 'cd enigma-dev/CompilerLine/programs/emake'
3) 'make'
4) 'cd ..'
5) 'emake.exe'

Emake requires a specific working directory so please make sure you open git-bash and cd to the right location even after building it, you will not need to call make again unless you make changes to the source so you can subsequently just cd to programs and run it.
It should then boot up the compileEGMf and hook up the compiler then ask you what you want to do. Here are some of the current commands.
quit : sends shutdown signal and closes the program
gmx : will ask you to specify the GMX path and the exe location of the output executable, must include file extensions and be absolute paths
test: builds an empty game

Now because I do not have it cleaning up its own memory yet either because we need to outline the commands and flags that this program will have you will need to quit and restart the program for each subsequent build until I can discuss this further with you guys and Josh to see how we want this thing to officially operate.

1120
General ENIGMA / Re: Cross-platform filename mangling
« on: July 04, 2014, 02:29:13 AM »
For serialization purposes we could offer some URI functions.

Also, sorlok, I have updated the Project Mario download for the ISO compliant version fixing file paths, please tell me If I missed any.
http://enigma-dev.org/forums/index.php?topic=1161.0

1121
Issues Help Desk / Re: Enigma's Project and Github
« on: July 04, 2014, 02:12:59 AM »
I don't know fervi, I just tested and I am able to extract and rezip an EGM using 7zip, though we use regular zip not the 7zip format.

Is the tree showing up blank? This happened the first time I did it because I accidentally placed the contents in a folder which was compressed to zip, you need to make sure the contents are TLD (top level directory). By which I mean if you open the egm/zip in an archive browser the files should be the first thing you see, not a folder that contains the files.

1122
Is that a combined texture there frog? Is the fence a separate model? Let me explain why this is happening first.

The triangles drawing the fence are being drawn before the other ones, because they must be declared first in the model, so what is happening is when they draw their texture is interpolating with whatever is behind them which at the time they are drawn in the background color. There are several things you could do, move all the vertices for the fence to the end of the model, but the interpolation issue will still occur if the fence triangles begin to overlap each other and then you'll see the terrain through parts of the fence.

Another easy solution is to turn of zwriting, and no I don't mean disable the depth buffer entirely, I mean just disable writing to it for this one model.
d3d_set_zwriteenable(false);
Do that before drawing the model, and then turn it back on afterwards. This is how I solved it in Project Mario's trees, Dailly specifically added this function in 8.1 at my request, which was really awesome at the time despite the fact I don't like where Studio is going.

There are other solutions that involve screwing with the sampler or something, I'm not sure, you'd have to investigate but I know there are alternatives, but I believe they may involve depth sorting and may be slow. This artifact is actually pretty common even in a lot of today's games.

1123
Developing ENIGMA / Re: Command Line Interface
« on: July 03, 2014, 03:49:36 AM »
Surfaces issue in GL, they are currently flipped upside down, we haven't figured out the best solution yet but the discussion was mainly between Josh and Harri. I think we should go back and fix them in GL1 the slow way though, since GL1 is simply intended to work, GL3 can figure out a better solution than scaling.

1124
General ENIGMA / Re: New functions available in the rooms editor.
« on: July 03, 2014, 03:48:40 AM »
Yes you did a great job egofree and the help is appreciated!  (Y)

Also where the hell is TKG?

1125
General ENIGMA / Re: Cross-platform filename mangling
« on: July 03, 2014, 03:47:52 AM »
Eh, I don't know sorlok, that seems like a bit of a stretch, I'd be much happier just updating Project Mario when I get the time and reuploading since I have a technically ISO compliant version.