What I did today

The writing reminds me of tagging, which I usually find mystifying. I’ve always wondered if other taggers are able to read it.

Maybe it says Lanemania?

I found GluonVM a little over a year ago. but never made anything with it, so today I decided to give it a try! Now I have a neat little javafx application running on my iPhone:

http://magaimg.net/img/7c9c.jpg

@philfrei
You are right! It is called Lanemania.

Thank you all for the Input. I agree the title is hard to read and I will fix this.
Good point about the ropes, I actually used the gameplay ropes texture for the UI, I will make new ones.
I just read something about font outlines and border for libgdx, maybe this will do the trick.

Implemented syntax highlighting abilities in my LWJGL3 UI solution LWJGUI:

http://magaimg.net/img/7cr8.png

I also hooked it up into my IDE:

http://magaimg.net/img/7crx.png

A few UI elements are broken in that picture though, as @SkyAphid and I are undergoing a lot of restructuring of LWJGUI :wink:

It’s been a while but here’s what I’ve been working on:

I’m hoping it ends up being a dungeon crawler but who knows.
As per usual it’s software rendered.
This is all in C and the entire engine uses integers only.

It takes more effort to make the tools than it does to work on the game :stuck_out_tongue:

In-house model editor:

Not today but in the past days…

Got (finally) done the new Deferred Pipeline, the next image resumes it pretty well. In my defense, the code in the left is 2 years old.

https://puu.sh/CRM94/cdc32dda21.png

Got some bugs fixed in the LWJGLX/debug project :slight_smile:

And updated my oldest prototype, and wrote JGO in it with snow blocks.

https://puu.sh/CRLfO/c77612e9ec.png

With this I set myself a challenge to get that prototype, at least, to the point it was before I stopped working on it.

I started working on a lightweight NanoVG implementation today. I needed something that was quick and dirty. I’ll probably finish up what I need from up it tomorrow or the day after, but if anyone else wants to use it, as usual just message me and I’ll add you as a collaborator. Orange451 basically has the more JavaFX-esque tons-of-functionality pretty stuff under control, so my implementation is meant to be more of a “Python approach” throw-it-together type API.

I’m calling it Clear. It has some tech from NNGINE thrown in with the new NanoVG stuff. The cool part is you can use the windowing stuff separately, so if you want a basic LWJGL3 windowing system to work off of, you can use Clear for that too.

You can check it out here:

To see the general workflow for a Clear application (or at least what I’m aiming for at the moment), check this file out. It’s the source code for the screenshot above:
https://github.com/SkyAphid/Clear/blob/master/ClearVG/demo/nokori/clear/vg/ClearHelloWorld.java

Re-created the JavaFX modena example:

http://magaimg.net/img/7dkp.png

Original:

This is amazing, keep up the good work. Always used the Modena example to test out things :slight_smile:

I can only guess how much work had to go into this project to get it to the point where you have it now…

Cheers

So, it is you… :smiley: Thanks for using it and reporting the bugs!

So much impressive work on this thread! I am in awe of the folks here.

Crossed a milestone today, while plugging away on the mundane task of figuring out how to distribute programs on the Mac:

I took a Swing “Hello world!” program, jlinked it and made a MacOS .app called Greeter with its own icon, packaged Greeter into a .pkg, then zipped and posted the file on my website (running High Sierra OS from a VM).

A friend with a Mac downloaded the zip, unpackaged the file, executed it–which automatically installed Greeter in the Applications folder, and was able to run the Greeter app and get the “Hey there!” message to display on a Swing form.

The zip was 23 MB, the unpacked app is about 75 MB. All the dots connected!

Some stuff to figure out remains: proper sandboxing and sealing the package. Also I have yet to find out if I can jlink a Java11 program with JavaFX on my test system and if audio will work (the test MacOS itself has no sound and doesn’t display JavaFX graphics but I suspect it will still process the jlink compilation commands).

Implemented ComboBox:

Continued work on Clear’s TextArea (right click and open image in new tab to see the full size pic):

Current features:

  • Good performance with large amounts of text
  • Smooth animated interface
  • Syntax highlighting (or any other needed range-based formatting)
  • Copious amounts of customization options

Source code of the above demo:
https://github.com/SkyAphid/Clear/blob/master/ClearVG/demo/nokori/clear/vg/ClearTextAreaDemo.java

Things are going a bit slower than I wanted due to some personal health issues, but I’m hoping to get it done soon-ish. Anyway, next up is text editing.

Check out the github repo’s readme to learn more about the project:

Friend reports back that JavaFX audio program that I compiled and posted for him downloaded and installed smoothly, and runs fine. Yes, the graphics appear, the audio plays, despite these not working on the VM environment where I did the compiling and packaging.

His main complaint: his Mac ID was required. He wants to know the program will be confined to the sandbox. It makes sense that people are a lot less likely to download and run new code from an unknown source if the code has full access to their system.

I’ve written the steps out (for manual compiling, jlinking, and packaging) and will eventually post them on our wiki thread, but I probably should first try and figure out why the Mac ID is being requested by the installer code (from the “Packages” application).

Tuesday is a session with another friend’s Mac. I feel a bit like I’m couch surfing.

Had an important milestone at work, so could not work much on my game project, nevertheless managed to redo the UI, something which finally pleases my eyes :D, not yet the final version, but very close to the final one:

New improved terrain generator with (temporary) trees which occur only within their preferred climate ranges.

Got text highlighting working. Also made a way to correctly render \t characters despite NanoVG’s attempts to arbitrarily make that functionality impossible. The best part is, my solution for it is completely customizable - you can make workarounds for literally any special character defect that NanoVG attempts to throw at you. Remembers kids, only you can prevent arbitrary architecture limitations.

Created a background creator for fast background creation. Proud of the field of view ability of my camera.

Finally had time to test something I was planning for so long time, added shadows (on a separate, shadows only layer). In my opinion looks nice :). I believe I will have to update my blender models and re-render everything now :smiley:

After fighting some health issues for a week or so, I managed to finally finish my TextArea implementation. I can finally rebuild JDialogue with Clear now.

I rebuilt my text formatting system and added an escape sequence command system that would work with NanoVG. It was kind of tough to get working because it wasn’t recognizing ANSI color sequences, so I had to invent my own using HEX colors instead. Ultimately I got everything working in a way that I think is clean, organized, and performance-minded. The system is customizable to a large extent and leaves itself open to future expansion. The best sort of code is the kind that can be expanded without breaking everything around it, in my opinion. So I tried to build Clear around that.

Here’s a snippet of how the above text is formatted in the code:

	\02\05#FF7F50Hello World!\01 \04This is entry number " + i + ".\01	

Notice how I was able to actually just insert tabs into the text. Clear will register that tab and render it correctly (normally NanoVG just murders the character). Additionally I have some custom escape sequences for my formatting. These are easily editable.

And here’s an excerpt from its documentation (Clear is highly documented) that describes how it all works:

[quote]Text areas in software always tend to be highly complex systems. I’ve tried my best to organize Clear’s text areas in a clean and easily modifiable fashion. In simple terms, as I like to keep them, Clear’s text area widget is organized as the following:

• TextAreaWidget: This is the core container for the text area and the interface for adding one to a Clear UI. All primary text data is contained in this class.

• TextAreaContentHandler: This class handles rendering and editing the text content of this TextAreaWidget.

• TextAreaContentInputHandler: This class is called by the TextAreaWidget to handle sending input instructions to the TextAreaContentHandler. It’s an abstract class and is meant to be extended to allow for custom input configurations. A default one with settings common to most text editing engines is included via DefaultTextAreaContentInputHandler.

• TextAreaInputSettings: This class contains some booleans for easily enabling/disabling input features of the TextAreaWidget. However, whether or not the settings are actually read depends on the TextAreaContentInputHandler implementation.

• TextAreaContentEscapeSequences: This class is an “under the hood” class that handles interpreting special escape sequences that can allow for special text formatting. It’s not recommended that this class be tampered with, but new features can be added if necessary.

• TextAreaHistory: This class contains TextState objects that allow for undo/redoing during editing.

If you need to edit or add new features to this text area implementation, the above list should help you in getting started on where to find functionality and how to edit it.
[/quote]
Clear is open source and available here.

EDIT:
Just got a general-purpose syntax highlighting system working too: