Java-Gaming.org Hi !
Featured games (83)
games approved by the League of Dukes
Games in Showcase (539)
Games in Android Showcase (132)
games submitted by our members
Games in WIP (603)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: 1 ... 3 4 [5] 6 7 ... 10
  ignore  |  Print  
  Spine: 2D skeletal animation  (Read 76752 times)
0 Members and 1 Guest are viewing this topic.
Offline Nate

« JGO Bitwise Duke »


Medals: 158
Projects: 4
Exp: 14 years


Esoteric Software


« Reply #120 - Posted 2013-01-04 10:35:51 »

No need for any apologies. This is the Internet! We've been properly trolled, now the flame war is over and we can continue onward. Smiley

Stupid KickStarter video, I hate it!

Offline ra4king

JGO Kernel


Medals: 356
Projects: 3
Exp: 5 years


I'm the King!


« Reply #121 - Posted 2013-01-04 10:40:14 »

Good luck with the KickStarter! I might back you guys it if I deem the video worthy of my money Tongue

Offline Cero
« Reply #122 - Posted 2013-01-04 13:28:47 »

imo libgdx is so great a very low yearly few of I dunno 5 bucks to be able to publish games using libgdx would hurt nobody and benefit the creators
with so many contributors the distribution would be problematic, but yeah, I dunno

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Orangy Tang

JGO Kernel


Medals: 56
Projects: 11


Monkey for a head


« Reply #123 - Posted 2013-01-04 13:37:09 »

The animation timelines are a little tricky to get right too. Most of the libgdx runtime isn't actually libgdx specific, you can reuse almost all of it and for the most part just swap how you draw attachments. This means if the format changes or features are added, re-porting the runtime is easy. To give you some sense of the size, the libgdx runtime is 1600 LOC, which includes both the JSON and binary loaders.

That does make sense, and I was expecting the runtime to be somewhat larger than that. I'll hopefully get a chance to try porting it to my runtime soon, and I'll let you know how smoothly it goes. Smiley I think if you're expecting people to use one runtime as a reference and port it then there's probably quite a lot you can do in that runtime to make it easy to port. But you won't notice until people start trying to do that, so we'll see how it goes. Smiley

What kind of external features does the runtime need? Does it spit out things like drawQuad() to libgdx or does it create geometry and hand that off? Any other dependencies/libraries/functionality I should be aware of?

[ TriangularPixels.com - Play Growth Spurt, Rescue Squad and Snowman Village ] [ Rebirth - game resource library ]
Offline Nate

« JGO Bitwise Duke »


Medals: 158
Projects: 4
Exp: 14 years


Esoteric Software


« Reply #124 - Posted 2013-01-04 23:56:25 »

Cero, it's hard to charge for OSS where many people contribute. It also turns off a lot of people. I think the lib would see quite a bit less usage if it wasn't totally free.

For the libgdx runtime, here are the libgdx specific classes it uses...
For general utility and storing data: Matrix3, MathUtils, Array, ObjectMap, Color
For drawing: TextureAtlas, SpriteBatch
For binary loading: FileHandle, DataInput
For JSON loading: FileHandle, Json (which needs JsonWriter, JsonReader, and OrderedMap)

For most of those porting is as easy as copy/pasting into your project. You could skip the JSON loader and just use binary. You'd probably need to make changes for code that uses FileHandle and maybe Color. The biggest difference will be how you handle drawing.

Attachments are abstracted. A RegionAttachment has an SRT offset from the bone and a texture region. It computes vertices based on the bone it is attached to, then uses SpriteBatch to draw.

Probably more could be done to make it use less libgdx stuff so it is easier to port to other Java apps. It might make more sense to make an LWJGL runtime, but then I don't know how many users would use that and Unity and cocos2d probably should get priority. I'm not totally sure how the runtime for those two will look, but if we can refactor things so the code remains similar for the different game toolkits that would be nice.

Offline Nate

« JGO Bitwise Duke »


Medals: 158
Projects: 4
Exp: 14 years


Esoteric Software


« Reply #125 - Posted 2013-01-08 01:37:35 »

Updated the download to 0.88. It's getting quite stable, only doing minor bug fixes and polish. Still slogging away, hope to be done soon!

Offline StumpyStrust
« Reply #126 - Posted 2013-01-08 06:10:47 »

I still can't use it. Says I don't have opengl drivers.

Offline Shiu

Junior Devvie


Medals: 2



« Reply #127 - Posted 2013-01-08 06:19:34 »

I still can't use it. Says I don't have opengl drivers.

Which graphics card do you have ? and which OS are you running ?
Offline Nate

« JGO Bitwise Duke »


Medals: 158
Projects: 4
Exp: 14 years


Esoteric Software


« Reply #128 - Posted 2013-01-08 10:42:15 »

He has Windows XP x86 5.1, Java 1.7.0_10, and (I think) an Nvidia NVS 300. I tried asking the LWJGL guys here but didn't get much help. StumpyStrust, have you updated your drivers to the latest? I would really like to fix this, but I'm not sure there is anything else I can try.

Offline Shiu

Junior Devvie


Medals: 2



« Reply #129 - Posted 2013-01-08 10:48:06 »

Ah yes, I think I actually looked at what card that was at an earlier time, I wonder if the Nvidia quadro drivers are somehow wonky when it comes to LWJGL
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline deathpat
« Reply #130 - Posted 2013-01-08 11:18:29 »

I have exactly the same config here at work, and I have exactly the same exception.
I'm now using scene2d.ui for my game editor, so now I can tell a bit more: I have this exception only when using libgdx through the LwjglFrame. Using the LwjglApplication is working fine.
I tried to call Display.create(...) in LwjglGraphics.java ( with the debugger) with the exact same parameters as the ones I use for my game, and I got strange results: sometimes it worked and sometimes not ... Sad

work in progress : D A E D A L U S
Offline Nate

« JGO Bitwise Duke »


Medals: 158
Projects: 4
Exp: 14 years


Esoteric Software


« Reply #131 - Posted 2013-01-08 12:04:54 »

Thanks deathpat, that helps. Damn, Spine really needs to use LwjglFrame. I wish I could reproduce it, it's hard to fix otherwise.

Offline Nate

« JGO Bitwise Duke »


Medals: 158
Projects: 4
Exp: 14 years


Esoteric Software


« Reply #132 - Posted 2013-01-08 13:30:30 »

I did a new Spine release, 0.89. I've updated LWJGL to the latest nightly and made a few small changes that likely don't help, but maybe you can try again? Maybe that GPU is just too old or the drivers are broken...

Offline kappa
« League of Dukes »

JGO Kernel


Medals: 81
Projects: 15


★★★★★


« Reply #133 - Posted 2013-01-08 13:47:57 »

He has Windows XP x86 5.1, Java 1.7.0_10, and (I think) an Nvidia NVS 300. I tried asking the LWJGL guys here but didn't get much help. StumpyStrust, have you updated your drivers to the latest? I would really like to fix this, but I'm not sure there is anything else I can try.
See post here for a potential workaround to the problem.
Offline Nate

« JGO Bitwise Duke »


Medals: 158
Projects: 4
Exp: 14 years


Esoteric Software


« Reply #134 - Posted 2013-01-08 14:19:47 »

Nice, thanks kappa. Updated Spine to 0.90 with this workaround. Any testers want to give her a whirl? Cheesy

Offline StumpyStrust
« Reply #135 - Posted 2013-01-08 16:14:10 »

Givin is a whirl right now.

Nope still a no go.

On Win XP SP 3 with a GeFroce 250 GTS and latest drivers.

Everything I have done on libgdx so far works so... Cranky

It works like a charm on my laptop that never uses its gpu so that is a +

Offline Shiu

Junior Devvie


Medals: 2



« Reply #136 - Posted 2013-01-08 16:47:08 »

StumpyStrust can you try downloading the nvidia opengl driver from https://developer.nvidia.com/opengl-driver please

I've been doing a bit of googling and have found a couple of interesting things, unfortunately none of which can be tested without being able to reproduce the problem myself. I wonder if its the combination of Nvidia and XP
Offline kappa
« League of Dukes »

JGO Kernel


Medals: 81
Projects: 15


★★★★★


« Reply #137 - Posted 2013-01-08 16:57:34 »

@StumpyStrust does this applet run for you? (it also uses Display.setParent())
Offline Pickleninja

JGO Coder


Medals: 10
Projects: 1


I'm tired of working for someone else.


« Reply #138 - Posted 2013-01-08 18:56:45 »

I love programming and can do it 14+ hours/day, but doing it for a job is different than doing it for fun. A job involves all sorts of stress and the work isn't what you would be doing for fun. It isn't the same at all. Overworking for a job isn't worth it. First, management is going to pat you on the head and tell you that you're doing a great job, whether you are killing yourself at it or just putting in normal hours. You won't get paid more and any meager recognition you might get for going the extra mile is not worth it. But the real reason to not overwork yourself is because you will get burnt out eventually and you'll begin to hate the work. Yes, even programming. They call it work/life balance because work != life. If it was all fun and sunshine and flowers they wouldn't call it work and you wouldn't be getting paid to do it.

Quoted for truth... I've done coding for a living, and honestly I can't put in the hours on someone elses project like I can on my own... It's just not the same.

-Pickle Smiley

Offline Nate

« JGO Bitwise Duke »


Medals: 158
Projects: 4
Exp: 14 years


Esoteric Software


« Reply #139 - Posted 2013-01-08 19:52:15 »

Nope still a no go.
Damn. Hmm. I've tried a different approach to waiting. I was blocking the EDT when waiting 1 second, now I set it free and try again after 1 second. If this doesn't work, I'm afraid I'm at a loss. One last try, pretty please?  Kiss Updated download to 0.91 with this potential fix.

Offline StumpyStrust
« Reply #140 - Posted 2013-01-08 22:52:16 »

Kappa that app works fine.

It is really weird as I have never had any issues with an opengl things on this comp.

Here is the log it gives in a txt file. Maybe it will help.

http://pastebin.java-gaming.org/440b4028138

Offline kappa
« League of Dukes »

JGO Kernel


Medals: 81
Projects: 15


★★★★★


« Reply #141 - Posted 2013-01-08 22:54:16 »

Nate: try create the Display on a thread other than the EDT.
Offline Nate

« JGO Bitwise Duke »


Medals: 158
Projects: 4
Exp: 14 years


Esoteric Software


« Reply #142 - Posted 2013-01-09 00:06:36 »

kappa, uhg. Interaction with Swing/AWT gets nasty if I don't use the EDT. Spine only does that a little, but many other LwjglFrame classes do.

Damn. I really hoped that last fix would work. Sad Strange the applet works. I guess I need to reproduce the problem in order to fix it. Who with this problem is in Austria or Denmark? Cheesy

Offline kappa
« League of Dukes »

JGO Kernel


Medals: 81
Projects: 15


★★★★★


« Reply #143 - Posted 2013-01-09 01:17:38 »

kappa, uhg. Interaction with Swing/AWT gets nasty if I don't use the EDT. Spine only does that a little, but many other LwjglFrame classes do.
How about doing just the Display.create() calls (The createDisplayPixelFormat() method) and the 1 second sleep retry thing outside the EDT, once Display and OpenGL Context successfully creates, then switch to the EDT (using Display.makeCurrent()) so you don't have to change the rest of the code, might work. I'm guessing AWT is doing something at around the time or during the Display.create() call which causes it to fail on certain drivers.
Offline CommanderKeith
« Reply #144 - Posted 2013-01-09 02:05:13 »

Just curious, but why do you use Swing and the EDT at all when you have the user interface library in libgdx? I just tried your latest version and I couldn't see any AWT/swing, not even in a filechooser.

Offline Shiu

Junior Devvie


Medals: 2



« Reply #145 - Posted 2013-01-09 02:18:13 »

Just curious, but why do you use Swing and the EDT at all when you have the user interface library in libgdx? I just tried your latest version and I couldn't see any AWT/swing, not even in a filechooser.

We're using swing so we can make our own titlebar and make it sexier looking. Also a coupe of other benefits with that, but that's basically it, at least from my understanding, I'm just the artist slave, not the programmer.
Offline Nate

« JGO Bitwise Duke »


Medals: 158
Projects: 4
Exp: 14 years


Esoteric Software


« Reply #146 - Posted 2013-01-09 02:24:51 »

kappa, I tried that but after switching the context to the EDT, nothing was drawn in the window. I could only see the window underneath, but the Spine window was receiving the mouse events.

We use Swing because LWJGL can't set the window maximized/minimized state. LWJGL can do undecorated, but I didn't know about the secret system property at first. Sad I posted about it in the LWJGL forums here, with more details about implementation later in the thread, but it doesn't look like it's on anyone's list to implement. I could convert and give up trying to restore maximized state (which is lame!), but it is unfortunate that using LWJGL with Swing doesn't work on some machines and I'd have to redo my window resizing and a few other AWT things.

I also want to set the window opacity on Windows (the app window fades in), as I do with AWT. This isn't that important, but it's the little polish that makes things nice. If I didn't care I'd just use Swing's Metal L&F. Tongue

There is probably something else I need AWT for... ah, native cursors. I want to use the predefined cursors for resize, move, hand, arrow, etc. Also in addition to maximize I have a fullscreen mode, so I use Swing's setMaximizedBounds and GraphicsEnvironment getMaximumWindowBounds for that.

All these things add up and I don't really want to lose these features. Sad I wonder if the JOGL libgdx backend that Julien just resurrected would work better for me...

Offline Nate

« JGO Bitwise Duke »


Medals: 158
Projects: 4
Exp: 14 years


Esoteric Software


« Reply #147 - Posted 2013-01-09 02:43:16 »

I changed LwjglFrame and LwjglCanvas all around. Maybe it works better now? New version up, 0.92. Because of the order things used to happen, the canvas had a size of 0x0 when the display was first created, then it was resized. Maybe this assploded some drivers. But chances are nothing is fixed. It would also be great if someone could test this on a Mac, as that OS is a picky SOB.

Offline Drakkheim

Senior Newbie





« Reply #148 - Posted 2013-01-09 03:18:47 »

Is it too early for feature requests?
 Grin

Specifically import and position a background image / or place static props for an animation. (doesn't need to be exported just animated against)

For example:
I have these goblins
And Ideally they'd be able to climb/scramble up the one block height difference by playing a climb animation instead of the usual 'magic jump' that you see in side scrollers.

However unless I can see the edge that it's climbing up to it makes really hard to position the hands and keep things from floating and figure out the final offset.
Same thing goes with getting on and off a ladder and lots of other non walk cycle things.

Just a thought Smiley
Offline Shiu

Junior Devvie


Medals: 2



« Reply #149 - Posted 2013-01-09 03:38:43 »

Drakkheim this is something Nate and I have talked about earlier and we will probably eventually make a specific node for it in the tree where you can place your background images. For now you can do the following though, place the images needed on a bone you aren't animating linked to the root. It's not optimal we know, but it will be improved later on.
Pages: 1 ... 3 4 [5] 6 7 ... 10
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

rwatson462 (33 views)
2014-12-15 09:26:44

Mr.CodeIt (23 views)
2014-12-14 19:50:38

BurntPizza (51 views)
2014-12-09 22:41:13

BurntPizza (84 views)
2014-12-08 04:46:31

JscottyBieshaar (45 views)
2014-12-05 12:39:02

SHC (59 views)
2014-12-03 16:27:13

CopyableCougar4 (60 views)
2014-11-29 21:32:03

toopeicgaming1999 (123 views)
2014-11-26 15:22:04

toopeicgaming1999 (114 views)
2014-11-26 15:20:36

toopeicgaming1999 (32 views)
2014-11-26 15:20:08
Resources for WIP games
by kpars
2014-12-18 10:26:14

Understanding relations between setOrigin, setScale and setPosition in libGdx
by mbabuskov
2014-10-09 22:35:00

Definite guide to supporting multiple device resolutions on Android (2014)
by mbabuskov
2014-10-02 22:36:02

List of Learning Resources
by Longor1996
2014-08-16 10:40:00

List of Learning Resources
by SilverTiger
2014-08-05 19:33:27

Resources for WIP games
by CogWheelz
2014-08-01 16:20:17

Resources for WIP games
by CogWheelz
2014-08-01 16:19:50

List of Learning Resources
by SilverTiger
2014-07-31 16:29:50
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!