Last week I showed how nicely both images and text can be displayed to the screen with relatively little amounts of code, but that code is not very practical from a modularity and simplicity perspective. The goal was never for developers to rely specifically on that functionality but to work as a core to build upon within sgine to provide more powerful abstractions for developers to use in order to develop with simplicity and logically.
This past weekend I spent quite a bit of time working on what I consider to be the fulfillment of that objective (or at least the beginning of) through the use of what I call Components. Components in sgine are sort of a hybrid between what would classically be a Node/Spatial in a 3D scenegraph and a Component / Widget in a standard GUI like Swing. There will be much more coming soon on this topic, but for now I'll leave you with a very short snippet to portray the same as my original example did of the puppies but using the Image component in sgine:
package org.sgine.ui import org.sgine.core.Resource import org.sgine.easing.Elastic import org.sgine.property.adjust.EasingNumericAdjuster import org.sgine.render.Renderer import org.sgine.render.scene.RenderableScene import org.sgine.scene.GeneralNodeContainer object TestImage { def main(args: Array[String]): Unit = { val r = Renderer.createFrame(1024, 768, "Test RenderScene") val scene = new GeneralNodeContainer() val component = new Image() component.location.z := -1000.0 component.source := Resource("resource/puppies.jpg") scene += component r.renderable := RenderableScene(scene) } }
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.