What I did today

Here’s a small look at our environment updates to Robot Farm. But we’ll be releasing some videos soon, hopefully.

Have some more free time on my hands.

Started back on my UI solution for lwjgl3.

I want to make it /similar/ to JavaFX, but be limited to just basic UI functionality.

The goal is to recreate a testing IDE I wrote using JavaFX a few months ago:

I want to create a proper IDE for my rendering engine.

So far the setup is quite minimal:


public class HelloWorld {
	public static final int WIDTH   = 320;
	public static final int HEIGHT  = 240;

	public static void main(String[] args) throws IOException {
		if ( !glfwInit() )
			throw new IllegalStateException("Unable to initialize GLFW");

		// Create a standard opengl 3.2 window. You can do this yourself.
		long window = LWJGUIUtil.createOpenGLCoreWindow("LWJGUI Window", WIDTH, HEIGHT);
		
		// Initialize lwjgui for this window
		Scene scene = LWJGUI.initialize(window);
		
		// Add some components
		addComponents(scene);
		
		// Game Loop
		while (!GLFW.glfwWindowShouldClose(window)) {
			// Clear screen
			glClearColor(0,0,0,0);
			glClear(GL_COLOR_BUFFER_BIT|GL_STENCIL_BUFFER_BIT);
			
			// poll events to callbacks
			glfwPollEvents();
			
			// Render GUI
			LWJGUI.render();

			// Draw
			glfwSwapBuffers(window);
		}
		
		glfwDestroyWindow(window);
		glfwTerminate();
	}

	private static void addComponents(Scene scene) {
		// Create a simple pane
		StackPane pane = new StackPane();
		
		// Add the pane to the scene
		scene.getChildren().add(pane);
		
		// Put a label in the pane
		pane.getChildren().add(new Label("Hello World!"));
	}
}

Just listened to it. Its sick.

So, took a Break after 2.5 month of learning Blender and doing my first animations and was working for last few weeks on new UI version (version 4 :D). And of course I do not like it :(, but I will not be reworking it anytime before I release a version for gamedev community to give a try (still have ~10 features to implement and 4 animations to do and some buildings to model).

Here is the result:

There are still a few tiny buttons missing, but I will fix that in the following days.

tldr: the best outcome of the new UI development process is not the new UI itself (well it is an improvement, but I still hate it) but the fact that now I have solid idea for the fifth version of UI, which I will be integrating into the public beta version.

Been working on an assignment for my Java college course, build an issue tracking system using JSF for web UI, Swing for desktop UI, and JPA for persistence. Copious amounts of magic complicating everything - my build is broken because I didn’t add the right jar to the classpath, or because I added the wrong annotation, or because something is wrong with the XML file. The fix is right there in the manual, and usually doesn’t work. Sometimes changing library version fixes the bug, allowing me to go on to fixing the next broken mess.

Usually nothing goes wrong until at runtime. It reminds me very much of what it is like developing in JS with NPM and co. What’s wrong with objects, functions, and compile-time errors?

Ohhh, I like your pre-rendered graphics. But I will say, make sure you keep the perspective correct to make it look good. You can use Blender’s camera feature to render them at the correct angle every time to make sure that everything is consistent. If you need any feedback or help, feel free to message me. I have a lot of experience with Blender and Substance Painter.

Welcome to the beautiful world of Java business software ;D
You should definitely add Spring to your project and because that’s hard to handle SpringBoot on top of it ;D

This will be 75% of your daytime job, one day (unless you get out of the misery called JEE). The bigger the project, the harder it gets - while the business-logic typically gets easier, and you get better at it… so all the fun stuff will be done in a spiffy. Throw Spring, Camel, OSGI (!), maven and grails into the mix, and you’re all set! Mostly because each and every compile-time step has caching, and caches get out of sync… leading to perpetually undefined code-versions being loaded. Pro-tip: it may seem like a waste of time, but eventually you end up with a script that clears a dozen odd cache directories, rebuilding everything from scratch all the time. Sure, fixing that typo has a 6 minute roundtrip-time, but at least you know your change made it into the runtime!

[quote]The fix is right there in the manual, and usually doesn’t work. Sometimes changing library version fixes the bug
[/quote]

[quote]Needing a library to set up the library
[/quote]

[quote]fixing that typo has a 6 minute roundtrip-time
[/quote]

I’m not a Java enterprise edition JEE developer, but always wondered what the point of having lots of settings in XML files and command line arguments was all about. It would make more sense to express these settings in code.
Similarly for Ant. Why make the Ant XML language to compile java code when java code can simply be used.
For this reason I thought that Nate’s SCAR project was very clever

Perhaps JEE is aimed at non programmer system administrators who don’t want to mess with code, just XML settings that they can more readily understand.

I learned Java Tomcat, a very minimal version of JEE and am still frustrated with all the command line and XML settings in context.xml and other configuration files

One look at the Tomcat configuration xml was all I needed to know I didn’t ever want to go down that path.

Cas :slight_smile:

Haha yes. But the alternative was to host the website using a PHP server which would have been 10x harder to learn with it’s own inane configuration! Tomcat was the least-worst option that I was aware of, from the point of view of an amateur who wanted to avoid learning any more languages than necessary.
JSP pages were interesting and I sometimes use them. But the NetBeans IDE doesn’t let you refactor the java code inside them at all which is a pain in the neck.

An OIT paper that looks interesting: http://momentsingraphics.de/?page_id=210

This is why I’m glad I work at Google: all our tools and frameworks are built in-house. The code to every little thing I work with is available to me. Documentation for popular frameworks and libraries are thorough and there’s plenty of examples from other projects who used them. It’s the sweetest gig.

Yeah, well… back in the day, when I was young and innocent, I typically barked at the mediocre stuff Google pushed into the world… Nearly everything they made was in the ‘meh’ category. These days I long for ‘meh’ levels of stability and productivity. Google’s stuff aint so bad.

Google occasionally put out the odd decent bit of code that I find a use for… like some of the stuff in their guava library, that’s quite handy for things like bidirectional maps and so on.

Cas :slight_smile:

Spent the last few days playing with my new Oculus Go. Amazing thing!

How is it? I bought an oculus dev kit 2 back in 2012. It was pretty neat.

The image quality is better than the DK2, from what I recall. For example, screen door effect is much less apparent with the Go (because of higher resolution and bigger pixels). The Go is capable of some pretty nice visuals considering it has a just mobile hardware. For example, the visuals in a game like Coaster Combat are every bit as good as anything I saw with the DK2. Another gorgeous experience is Ocean Rift. I haven’t tried the consumer version Rift however. The sound from the inbuilt speakers is very good and is not too disturbing to others nearby, assuming there is a bit of ambient noise going on.

The Go only has 3DOF so it can be a bit disorienting if you move your head forwards or backwards for example (as there is no visual feedback).

Netflix works well - probably better than on the Rift because of the higher resolution of the Go.

When I’m in the UI I feel there are limitations to the visuals (blurriness of text and off-center images), but when I am in-game I don’t notice any visual defects. I can’t compare to the DK2 as it’s years since I used it, but Oculus do claim to have made major improvements in the lenses in the Go vs the Rift.

Battery life is VERY limited, but apparently is better than Gear VR.

Let me put it this way: my family likes it so much we are getting a second one. We’ll also be getting one for our grandkids.

Might be time for me to start looking into them again :slight_smile:

Could be fun to make a VR game