Author Topic: dim3 v0016  (Read 6818 times)

ggadwa

  • Administrator
  • Hero Member
  • *****
  • Posts: 1317
    • View Profile
    • Klink! Software
dim3 v0016
« on: July 06, 2012, 01:25:45 PM »
Quick version, with mostly editor changes.

I know I've got some outstanding additions and bug fixes, and I will get to them, but I need to get out these first, then work on the ES2/shader only stuff, and then I'll get back to that.

Code: [Select]
Animator & Editor
 * put back pixelated textures
 
Editor
 * mouse movement scrolling speed depends on closest mesh
 * drag speed now follows 3D positioning better
 * added axis move/rotate handles to meshes
 * handle drags now conform to grid
 * snap mesh didn't update the vertexes until the next drag
 * WASD moves, QE goes up/down
 * fixed a bug where shift-click then drag would not properly drag some items
 * added "cascading sizes" mesh flag.  If this is on, sizes changes force all other similiar meshes to conform

Engine
 * removed all the old SDL item, now all builds on SDL2 (win32)

OS X: http://www.klinksoftware.com/download/dim3_0016.zip
Windows: http://www.klinksoftware.com/download/dim3_0016_win32.zip
Current Data: http://www.klinksoftware.com/download/Data.zip (unchanged with this version)

[>] Brian

Bink

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 701
    • View Profile
Re: dim3 v0016
« Reply #1 on: July 06, 2012, 02:26:38 PM »
What does shaders only mean in this case? The "no shaders" option will be gone?
That would mean I'd have to maintain my own version if I want more than 3 FPS. Or switch to a different engine.

ggadwa

  • Administrator
  • Hero Member
  • *****
  • Posts: 1317
    • View Profile
    • Klink! Software
Re: dim3 v0016
« Reply #2 on: July 06, 2012, 03:26:58 PM »
What does shaders only mean in this case? The "no shaders" option will be gone?
That would mean I'd have to maintain my own version if I want more than 3 FPS. Or switch to a different engine.

Then you're going to have to switch to a different engine.  The reality is this is the future, the next revision of OpenGL -- and the revision that's been on the iOS devices since day one (the fixed function/no shader is actually an emulation and makes dim3 slower than it should be) -- is shader only.  OpenGL 3.0, OpenGL ES 2.0 (on the devices) has NO FIXED FUNCTION SUPPORT.  As a matter of fact, it doesn't have half the things OpenGL 1.x has.

For instance, what I'm running on iOS is fixed function, but what's happening in the background is iOS is creating shaders on the fly that emulate the fixed function.

I can only do so much, maintaining a lot of backwards code that will eventually just not run and trying to be modern are just not stuff that I can keep doing, nor can I fight against what are ways APIs are going.

Even on older cards, shaders works OK and work just as fast as fixed function.

[>] Brian

trianglebutt

  • Hero Member
  • *****
  • Posts: 1333
    • ICQ Messenger - 599215104
    • MSN Messenger - aasrd@gmx.com
    • Yahoo Instant Messenger - btd.metalman@yahoo.com
    • View Profile
    • Art Drop
    • Email
Re: dim3 v0016
« Reply #3 on: July 06, 2012, 06:55:49 PM »
Bink it means you need to ge ta new computer.
Art Drop
Quote from: Dim3 IRC
Kurton: why does it have to come EVERY year?
Kurton: Take a fucking break, kids. You don't need all those presents.

ggadwa

  • Administrator
  • Hero Member
  • *****
  • Posts: 1317
    • View Profile
    • Klink! Software
Re: dim3 v0016
« Reply #4 on: July 13, 2012, 06:19:30 PM »
FYI, on what my current direction will be (at this point!)

I've really far into the ES2 conversion, and it looks good (and simplified the code I have to handle.)  When that's done, I'm going to work on two things: Tanks of Terror 2 and a "real" demo.  Alex is creating some great artwork.  It won't be anything big -- a single player level and a multiplayer level -- but it's hopefully something I can put up on for free on the App Stores to draw some people in.  I don't know how far I can take it, but it'll be an open test here and we can all have a hand in fixing things and reporting bugs.

[>] Brian

ggadwa

  • Administrator
  • Hero Member
  • *****
  • Posts: 1317
    • View Profile
    • Klink! Software
Re: dim3 v0016
« Reply #5 on: July 19, 2012, 07:54:12 PM »
The conversion is complete, and I haven't lost any speed but I've gained a lot cleaner code, a lot more modern approach, and shaders on iOS.  Well, except that the minute I attempted to run this on iOS, I discovered the OpenGL ES 2 requires precision identifiers in front of every variable (you can do it globally but then you lose the speed win) and these are not part of the desktop spec.  Which means I know have to go through all my shaders and add this variable depending on which system it's compiling for.  *sigh* :)

It's all worth it though.  Looking at a test version in the next week or so!

So make for a very cool Tanks of Terror on iOS, too :)

[>] Brian

ggadwa

  • Administrator
  • Hero Member
  • *****
  • Posts: 1317
    • View Profile
    • Klink! Software
Re: dim3 v0016
« Reply #6 on: July 20, 2012, 07:50:44 AM »
Even though it's not out yet, I've updated the shader docs and added an example shader, and some information about working around ES2/Desktop differences.

[>] Brian

ggadwa

  • Administrator
  • Hero Member
  • *****
  • Posts: 1317
    • View Profile
    • Klink! Software
Re: dim3 v0016
« Reply #7 on: July 23, 2012, 08:05:32 PM »
Progress:



This is on my retina iPad -- the original was 2048x1536.  That's bigger than my regular monitor, and quite a bit more pixels, so I'm obviously going to have to make reduced shaders for iOS device (less lights, quicker but less precise bumps/specs) to get the speed up.

Yes, I know I messed up the normals on the top of the traffic poles :)

Still have a ways to go, full screen shaders are broken and a couple other things.  I'm also thinking of more optimization ideas.  Aside from that, we've got full shader support, bumps, specs, etc, on iOS.

[>] Brian

Alexander Smith

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1188
  • Cold Fusion Games
    • AOL Instant Messenger - coldfusiongames
    • View Profile
    • Cold Fusion Games
    • Email
Re: dim3 v0016
« Reply #8 on: July 28, 2012, 09:14:56 PM »
Hey that's pretty neat!

I think the normals on those poles are messed up. They aren't supposed to hard at the edges like that, and the spec texture for the poles should be darkened so it looks properly like concrete.
www.alexwsmith.com - Cool game stuff posted daily!

ggadwa

  • Administrator
  • Hero Member
  • *****
  • Posts: 1317
    • View Profile
    • Klink! Software
Re: dim3 v0016
« Reply #9 on: July 29, 2012, 08:22:46 AM »
Hey that's pretty neat!

I think the normals on those poles are messed up. They aren't supposed to hard at the edges like that, and the spec texture for the poles should be darkened so it looks properly like concrete.

There's a bunch of short cuts being taken to get the fps up, and not up very far.  The problem is the retina display has to push 3 million pixels a frame, and running proper shader calculations is just too much work for the GPU.  My computer monitor isn't even that big and it has a much more powerful GPU.  I'm still not sure what I'm going to do.  Yup, the normals were messed up, I caught that later.

[>] Brian

ggadwa

  • Administrator
  • Hero Member
  • *****
  • Posts: 1317
    • View Profile
    • Klink! Software
Re: dim3 v0016
« Reply #10 on: July 30, 2012, 07:44:58 AM »
Let me note that dim3 Engine can crash on exit on OS X 8.  It's some change (and probably a bug) in the javascript engine.  It only happens on exit so it's not a big concern, but I'm looking into it.

[>] Brian

Alexander Smith

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1188
  • Cold Fusion Games
    • AOL Instant Messenger - coldfusiongames
    • View Profile
    • Cold Fusion Games
    • Email
Re: dim3 v0016
« Reply #11 on: July 31, 2012, 01:24:04 PM »
Does the game control well on the iPad?
www.alexwsmith.com - Cool game stuff posted daily!

ggadwa

  • Administrator
  • Hero Member
  • *****
  • Posts: 1317
    • View Profile
    • Klink! Software
Re: dim3 v0016
« Reply #12 on: July 31, 2012, 01:45:20 PM »
Does the game control well on the iPad?

I haven't really gotten that far.  I'm happy with Scruffy, it works really well, and it's using the same controls, except that now the joystick also registers up/down as forward/backwards.

I'm thinking, for now, I'm concentrating on the OS X version, get that down and working, and then worry later about the iOS version.

[>] Brian

ggadwa

  • Administrator
  • Hero Member
  • *****
  • Posts: 1317
    • View Profile
    • Klink! Software
Re: dim3 v0016
« Reply #13 on: July 31, 2012, 08:19:48 PM »
As part of the next version, I've also started and have got a long way into the label system.  Objects in the game (beside their automatic network label) can have text labels, bitmap labels, health bar labels, and all settable with colors, size, distances, etc.  They are all attached to bones, and can all be active at once.  Tanks of Terror will show health bars over all the enemy tanks (there will be sparks and smoke to show damage, also.)

[>] Brian

ggadwa

  • Administrator
  • Hero Member
  • *****
  • Posts: 1317
    • View Profile
    • Klink! Software
Re: dim3 v0016
« Reply #14 on: August 10, 2012, 08:48:36 AM »
FYI, Current Progress.

I'm taking my time on this one and doing some big things within the code.  The Shader/ES 2 stuff is all done and working well.  All the editing programs are cross platform with OS X/win32, but they contain a lot of platform specific code.  I'm trying to clean all that up so it's just a small set of files, so it's easier for me to work with and if anybody cares to make a linux port of those, it'll be easy(ier).

After that, I want to work a little more on ToT2, and see if that creates any additions, and then wrap that all up as the next version.

[>] Brian