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 - Josh @ Dreamland

Issues Help Desk / Re: full screen, scaling.
« on: August 21, 2013, 10:54:23 am »
You probably want views. They're part of the room editor. The window is automatically sized to accommodate viewport boundaries, and you can display an area of any size in a view of any size: it will be scaled for you automatically.

If you actually want it to be scaled down, use a viewport smaller than your view width/height. Otherwise, just leave the viewport size equal to the view boundaries in the room.

Off-Topic / Re: SDL2 seems to be nice...
« on: August 19, 2013, 01:26:21 pm »
SDL really isn't that bad a library. The best is SFML, and the worst is GLUT. GLUT is impossibly, helplessly broken, in addition to being featureless. SDL is just featureless. SFML is well-written, flexible, and extensible; we almost used it for ENIGMA, and may have ultimately done so if not for the perks of using native code.

General ENIGMA / Re: ENIGMA for classroom?
« on: August 19, 2013, 01:07:42 pm »
I was getting nothing but blackscreens trying to run something of Slojanko's a couple days ago. Unless the fix for that is very recent, I'm afraid it's still at issue.

Running the game on the latest commit (after fixing the errors in it so I could actually build again) resulted in a gray screen with white text instead of black screen. No visible models or anything else. But then, it might be an issue in their model/game code, so I can't say for sure.

General ENIGMA / Re: Does LateralGM support vector graphics?
« on: August 18, 2013, 02:40:43 pm »
I had not heard of ShivaVG; I thought Khronos was basically blowing hot gas. Thanks; I'll give it a lookover.

General ENIGMA / Re: Contributing to the Wiki
« on: August 18, 2013, 07:21:06 am »
1. Just move the page; it'll leave a redirection page, but that's fine, as people can always edit it later if needed. I went ahead and did so.
2. You can't copy and paste anything at all, or we'll be in legal hot water. Unless their help file is, as our Wiki, under the free documentation license, of course (I promise it isn't).
3. I believe mbox is just a certain color. Might check if the mbox template is using something that's easy to copy. Wiki templates confuse me.

Issues Help Desk / Re: Some problems I have found.
« on: August 17, 2013, 09:50:12 pm »
I can't catch that; the IDE doesn't inform me.

Proposals / Re: Changing fonts in LateralGM
« on: August 17, 2013, 01:30:37 pm »
LGM has a serious issue with the concept of a "preferences panel." It's been lacking one for a few hundred years, which is impressive considering Java Swing isn't quite that old (despite its appearance and performance).

If I had to guess, I'd say we'll have a preferences panel in the next few weeks containing font and highlighting color options. Note that only fixed-width fonts are supported; I got tired of Java's font issues and grid-aligned all glyphs in the new editor pane. If you're interested in variable-width fonts, I'll file a ticket on the matter and deal with it later on; my experience, though, is that most people ultimately prefer fixed-width for coding.

General ENIGMA / Re: Does LateralGM support vector graphics?
« on: August 17, 2013, 01:25:59 pm »
I think he was referring to SVG, Harri.

I want very badly to support vector graphics, but they are extremely slow, and rasterizers are usually fat and relatively poor. InkScape is the only good SVG raster program. ImageMagick is awful at it; LibreOffice and most image viewers screw up royally on text and basic shapes, and only six programs support vector graphics, anyway. It puts us in a really awkward position. Especially with hardware SVG rasterization being a new and explosive topic.

Rest assured, no one on the project is more interested in supporting vector graphics than I am, and I will make certain we support them, at whatever level, in the not-too-distant future. It just may require them to be pre-loaded into framebuffers ("surfaces") at varying sizes, or at user-specified sizes.

I have also considered writing a compiler for a small subset of the SVG format, so simple graphics can be quickly rendered in real time. To correctly support gradients and filter effects, however, we will need better shader support than ENIGMA presently offers.

We'll get there, though.

General ENIGMA / Re: Contributing to the Wiki
« on: August 17, 2013, 01:19:43 pm »
1. We tentatively keep an eye on the page history, so no worries. Edit away.
2. That would be preferable, but isn't required. We're not afraid of redlinks; if you use a word that you don't think someone would understand right away, go ahead and link it and it'll be sorted out later.
3. Assuming the Wiki can organize that information better, certainly. A lot of info cycles around the forums frequently that I think would do better on the Wiki, if we knew where to put it.
4. I believe so; you just include the category's template on the page somewhere.
5. Any improvement counts. Just try to be right about the corrections you're making. :P
6. The wanted pages page is generated from redlinks, but it's a decent indicator of work to be done. Part of the issue with the Wiki is that people who understand what needs documented seldom know how to document it, and vice versa. I could tell you anything you want to know about the project, but I have no idea where to begin doing so. For that reason, I encourage people to create stub pages on a given topic to be filled in by developers.


General ENIGMA / Re: Legality Question...
« on: August 17, 2013, 01:11:26 pm »
Technically, there's nothing we could do to stop you from doing that, if you weren't using any of our code. EGM is just a format; if you can read it, you can do anything you like to it. Especially convert it to another format.

While, in general, I'd prefer that an IDE which can read EGM also supports writing it, it isn't necessary, and I wouldn't act on it unless you managed to obtain legal rights to your own format which would prevent us from converting back and forth from it ourselves, which would be hard, number one, and also fall under the umbrella of trapping users in your IDE, which I'm against.

General ENIGMA / Re: Legality Question...
« on: August 17, 2013, 11:27:24 am »
That was what we were discussing. Right now, our license is a mess, but whether the IDE is proprietary does not matter. In the future, I would like to continue to allow proprietary IDEs, so long as they do not do any of the following:
  • Disguise the fact that ENIGMA is free software. Users should be aware that they have FOSS alternatives to the IDE, and that ENIGMA itself is free.
  • Modify ENIGMA in any non-free way, which is forbidden by the GPL. All ENIGMA code must be open-source.
  • Augment ENIGMA in any restrictive way; that is, offer non-free or specifically restricted extensions to ENIGMA which make it somehow more enticing to use the proprietary IDE (for reasons other than it is more intuitive, fast, or reliable than the free IDE).

So basically, as long as you're competing with your IDE, and not with ENIGMA, I have zero problem whatsoever with a proprietary IDE. I'd even encourage it in some cases. By competing with ENIGMA, I mean somehow getting ENIGMA itself to work better when used through your IDE; for example, by offering libraries or extensions that would not be available to users from another IDE that you do not control. In this case, I want the GPL to remain in full effect, so essentially, your options are to play nice and let everyone use your (proprietary) library (even if they have to pay for it), or to GPL it, in which case, everyone must use it open-source.

The simple answer to your question is, yes, you can have a proprietary IDE, as long as you don't try to be an asshole about it. Play fair, and no one will have a problem with it.

Works in Progress / Re: Project Mario
« on: August 17, 2013, 09:11:22 am »
We're over it. The staff pretends not to see us as a threat, despite—and these are the words of their own userbase—stealing our idea and marketing it for hundreds.

Here's a quote Robert really liked that one of them deleted from their site (it was since reposted as a quote from someone else):
Take the YYC for instance, they've been marketing it as LLVM when in reality it does exactly what ENIGMA does, which I've personally seen the lead developers of GM talk **** about multiple times (check Twitter for instance), now I'm not saying ENIGMA is a good tool, in fact I'm saying the exact opposite, that's why the YYC is snake oil. It's not LLVM regardless of what YYG is telling you, it's GML translated into (poor and improper) C++ and then compiled with clang (a C/C++ LLVM compiler) and linked against their runner compiled as a library.

The unfortunate truth is that they're not a great company, and we're a non-profit, non-salary, no-donation, contribution-based organization. We're practically rag-tag, so we're not doing a fantastic job of showing them up. The difference is the price tag and our ability to admit to our own inadequacies.

That said, this is a discussion for another thread.

Issues Help Desk / Re: Some problems I have found.
« on: August 17, 2013, 09:05:30 am »
If you save a transparent PNG in a GM6, it will lose transparency. GM6 used zlib'd RGB format for its images, so LGM has to dump them as such on save. I've lost hours of work to that in the past; the moral of the story is, don't save as GM6.

Anyway, was a sprite index of -4 causing crashes? If it was, that should have been picked up by debug mode.

General ENIGMA / Re: Enigma on Mac OS X
« on: August 17, 2013, 09:00:36 am »
It had to be; no one maintains it, and the systems that "are maintained" are broken every other fucking day. But anyway, Mac basically working, but without sound or post-1990 video, is good enough for me.

ENIGMA's exported C++ is extremely ugly; you won't want to work with it. However, you can work directly with OpenGL by #include'ing it from ENIGMA's Definitions. Open ENIGMA settings, click the Definitions button at the bottom, and enter [snip]#include <GL/gl.h>[/snip] in the code. Unless you save as EGM, your team will need to do the same to use your code.

From there, you can use any OpenGL function ENIGMA can read, which, last I checked, includes all of them.

We normally don't recommend doing that, as it isn't portable; that is, you're stuck with OpenGL on all systems that way. Have you considered creating wrapper functions for the calls you need? Wrapper functions can be ported to other APIs, and odds are, if you find them useful, so will others. That being the case, assuming your needs are reasonably general, we might consider adopting them as part of the official API (meaning, include them in the DirectX port, along with others), if you'd like to share.