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

1036
Quote from: edsquare
I'm using the installer script to update, it in turn uses install.py so yes I'm updated on all fronts.
Actually, no you are not, I have not updated the packages repository because I can't get the md5 hash right now, download the latest from the Extra Packages page manually because I believe they updated it.
http://enigma-dev.org/docs/Wiki/Install:Extra_Packages

Edit: Scratch that they did not apparently. So this is an existing regression probably in the latest version as well.

Also your error logs you keep uploading are useless, those are just pointer stacks, upload enigma-dev/output_log.txt


1037
Developing ENIGMA / Re: Font Pixel Alignment
« on: August 01, 2014, 12:00:44 AM »
Quote
Are you talking about the slight blurring only during movement of sprite, fonts etc ?
Yes as I said this is specifically to make it both clear and allow it to interpolate properly for scrolling text. Make a scrolling background and make the x and y values round() instead of being floating point or half integer and you'll notice the scrolling is much more abrupt, it goes directly to the next pixels instead of interpolating and blending in between. You want this blurring in certain cases is what I am arguing.

Quote
With or without interpolation I have never had the problems described in your screenshots. Is this another graphic card specific issue?
You've never seen because in your local copy before texture handling was made compatible with Studio I was blocking interpolation for fonts which is no longer feasible. And no this is probably directly related to the font anomalies you guys were having before, we duck tapped over it instead of fixing the underlying issue, remember?

1038
Proposals / Re: Flipping, scaling and rotating instances
« on: July 31, 2014, 11:41:34 PM »
I decided to run the tests for you.

I created a new project, 1 object and 1 sprite. I then created a room and placed the object in it.

The following code was placed in the create event.
Code: (EDL) [Select]
show_message(string(image_angle));
With the instance angle set to 20, the create event reported 20.
With the instance angle set to 20 and image_angle set to 30 in the instance create code, the create event reported 20.
With the image_angle set to 30 in the instance create code, the create event reported 0.

So my initial hypothesis was correct. Just focus on adding the ability to the room editor and the properties being saved to each format. I will update the back end for you and everything after a discussion with Josh and once you get everything working and commit it.

1039
General ENIGMA / Mipmapping Implemented
« on: July 31, 2014, 11:22:54 PM »
Well after cleaning up all of the latest texture handling to put us back on par with Studio you can now use mipmapping. You can generate mipmaps with the new texture_add or the traditional sprite_add/background_add and then set the filter using the new texture functions. You'll have to pull my changes from GitHub to start using the updated functions, I am waiting to update the ZIP so I can add it into the compiler and let you toggle mipmaps on sprites and backgrounds in LateralGM since it is anticipated that this will also be a feature of Studio. Why you ask? Because I asked Dailly a couple of times in person and he confirmed it, he just for some reason thinks it takes more effort than it really does? He literally told me it's a complex feature that takes time to test and implement on multiple platforms, but for some reason application_surface and other changes are implemented abruptly and brutally, idk, don't ask me because I am not him.

Documentation is available on the Wiki.
http://enigma-dev.org/docs/Wiki/Texture_Functions

The functions work the same for all graphics systems and utilizing mipmapping on high resolution textures should improve your games performance dramatically, for instance my terrain demo goes from 100fps to around 500 as you can see in the screenshot.


The updated version that is watered down for the sake of showing off mipmapping is available for download.
Download: https://www.dropbox.com/s/ls34n8lrb81bbi5/texturefiltering.zip
Size: 1.22mb's

1040
Proposals / Re: Close file without closing LGM/ENIGMA
« on: July 31, 2014, 11:17:40 PM »
Now I understand, I had thought about it before, and I have ideas, but sadly don't have time to work on them.

1041
Programming Help / Re: Creating a HtmlView control on Linux
« on: July 31, 2014, 11:16:10 PM »
Write a widget system extension and you can use whatever widgets you want.

1042
Programming Help / Re: Creating a HtmlView control on Linux
« on: July 31, 2014, 09:53:18 PM »
You could also use wxWidgets, Qt Framework (which is webkit based I think), or possibly some GTK project. Java/Swing is also an option but don't expect it to render too much advanced HTML or HTML5 for that matter.

1043
Developing ENIGMA / Font Pixel Alignment
« on: July 31, 2014, 09:27:02 PM »
Ok so I need to describe a fault in our text drawing functions in detail. Some of you may have noticed the interpolation distorts your fonts, but not in the way you would expect. Examine the following.

Note: It really helps to open these images in Paint or another program with no filtering and zoom down to examine the pixels.

In this first image we see what happens when we draw the text at full integer coordinates with interpolation enabled. Notice interpolation does not effect most of the characters and most have crisp edges, as if interpolation is not even enabled.


In this second image we see what happens when we draw the text at half integer coordinates with interpolation. Notice interpolation is mostly working on most of the characters but a few have crisp edges.


Note: This is the behavior observed in Direct3D9 as well, except the behavior appears to be reversed appearing interpolated with full integer coordinates and not with half integer coordinates.

This is not something which can be fixed purely by disabling interpolation or padding the font textures though they still need to be anyway. This could have also been the cause of other font anomalies for some of you at an earlier time. I have also confirmed this issue to be the result of characters rendering at different locations between OGL and D3D if we round and draw at full integer coordinates the characters appear at the exact same location in all graphics systems. The problem exists in our text rendering functions, they either all need to be at full integer coordinates or all at half. Generally they should always be at half integer coordinates with vector graphics, like half pixel alignment in Inkscape.

However, when scrolling backgrounds or text it helps to allow them to transition between half and full pixel integer coordinates to make them blend smoothly. My proposal is simple, we merely need to align all the characters of a draw_text call to either full or half integer coordinates and no in-between, this is something we can all mutually agree on. Now me and Josh disagree however about when extra spacing should be applied, Josh believes it should be every 3rd or 4th character where as I believe the excess spacing should be applied immediately after it reaches a whole number.

It basically has to do with how we handle xx as you can examine on the following line.
https://github.com/enigma-dev/enigma-dev/blob/master/ENIGMAsystem/SHELL/Graphics_Systems/General/GSfont.cpp#L374

With the following modification to the drawn text function, the text and all characters are drawn at full integer coordinates and properly and evenly spaced between all graphics systems at the exact same coordinates with or without interpolation enabled.
Code: (C++) [Select]
            unsigned xxx = xx;
            draw_vertex_texture(x + xxx + g->x,  yy + g->y, g->tx, g->ty);
            draw_vertex_texture(x + xxx + g->x2, yy + g->y, g->tx2, g->ty);
            draw_vertex_texture(x + xxx + g->x,  yy + g->y2, g->tx,  g->ty2);
            draw_vertex_texture(x + xxx + g->x2, yy + g->y2, g->tx2, g->ty2);
            draw_primitive_end();

These are the results with the above changes. The following is drawn starting at full pixel passed to the draw text function and interpolation enabled, this is actually what it should look like with interpolation enabled when the font texture is not padded.


The following is drawn starting at half pixels passed to the draw text function with interpolation enabled, this is how GM avoids interpolation on font textures, it always draws at full integer coordinates like most game engines.


Now as I said GM and most game engines always render fonts at full integer coordinates, but this can cause them to be blocky when you want scrolling text, it makes the transition much more abrupt, you want this blurring that is caused by half integer coordinates when drawing 2D objects, sprites, backgrounds, and text. Therefore, I believe I will temporarily prepare a pull request to be merged immediately that draws our text at full integer coordinates like everyone else until we can come up with an alternative or decide on a solution.

It would help if everyone including Josh could weigh in and offer their opinions.

1044
Proposals / Re: Close file without closing LGM/ENIGMA
« on: July 31, 2014, 05:22:29 PM »
Why not just hit the new file button...?

1045
Proposals / Re: Flipping, scaling and rotating instances
« on: July 31, 2014, 05:18:53 PM »
Quote
TheExDeus said it would be possible to do this in the creation code of the instance
Do not do it that way, if you want I can add them to the compiler and everything. They need to be in there so I can update the command line interface to accept them as well as. Josh should weigh in.

Quote
So unless someone has an argument why my idea wouldn't work, then I think it's the most practical.
Because nobody has tested Studio to see at what point those locals are set, what if they are accessible in the create event? Then having them in instance creation certainly won't work because they won't be available, same as X, Y which are available in the create event. I'd prefer this be tested first to ensure.

If it is necessary I can update the back end and everything for him, he'll only have to change LGM.

1046
Off-Topic / Re: MacOS Counter-intuitive?
« on: July 31, 2014, 05:15:07 PM »
Quote from: Rusky
But for many people (IT departments, people without the time to learn how to build a PC, experts in other fields that need to do their real jobs, etc) that's not an option, so they pay for having it put together. That applies whether you get a Mac or not, and when you compare a pre-built Mac to a pre-built PC with the same specs, you'll get the same price. When you compare custom-built PC to pre-built Mac with the same specs you'll still get pretty close. In my experience a lot of the savings of building your own PC is from being able to build exactly what you want rather than having to overshoot.

This I actually agree with. Anyway, most of my complaints are about how shitty the design is, I am not arguing customizability or anything, which I still find a valid argument though. Xcode is shit too, I really hate Xcode for reasons Josh pointed out.

1047
When is the last time you pulled?

1048
Off-Topic / Re: MacOS Counter-intuitive?
« on: July 31, 2014, 01:36:14 AM »
Quote from: Rusky
I don't really care about your opinion on Mac's right click functionality, just the false claims.
I never made any.

Quote from: Rusky
Further, OS X is much more stable on Apple hardware than <insert OS here> on <insert hardware here>, so dual booting on a Mac is strictly better compatibility-wise than dual booting with hackintosh.
I don't disagree, that's not really that unexpected however, of course it runs better on the hardware they designed, tested, and anticipated it to run on.

Quote from: Rusky
The effect of these differences may or may not be a big deal for your use case, but when it does make a difference and you need those features, you'll pay the same for hardware whether you go with a Mac or not.
Woz is the bigger man in every regard, I do like Apple just not their products. Regardless of how you feel about patent rights etc etc there has been a lot of nice innovation come out of Apple, see the magnetic power cords.

Quote from: edsquare
Mac's are still good machines but a little bit overpriced,
They've always been overpriced, this is nothing new, see Lisa.

Quote from: JoshDreamland
This philosophy continues to be a big part of Apple's R&D:
You never cease to amaze me, you always know just the right thing to say like 99% of the time.

Quote from: JoshDreamland
From a structure standpoint, OS X is vastly superior to Windows.
Because it's fucking BSD/Linux, so of course it's superior to Windows.

Quote from: edsquare
What kind of fucktard makes a desktop look and behave like a phone?
Steve Ballmer

1049
Off-Topic / Re: MacOS Counter-intuitive?
« on: July 30, 2014, 05:00:20 PM »
lol, Harri you are actually arguing against what he is saying. You're suggesting Mac is overpriced and he is suggesting Mac is priced in the interest of the consumer with little or not commission.

1050
Off-Topic / Re: NakedPaulToast
« on: July 30, 2014, 03:47:53 PM »
Ahhhhhh yes you're right Rusky, I see that now. In any case, I haven't seen any evidence of NPT acting like a troll, but I do know a lot of GMC people have this problem.