Home » SIRTECH CLASSICS » Jagged Alliance: Unfinished Business » Tools and Guides Repository (Archive) » Improving Original JA2 graphics
Re: Improving Original JA2 graphics [message #179405] Sat, 29 March 2008 06:35 Go to previous messageGo to next message
Khor1255 is currently offline Khor1255

 
Messages:1817
Registered:August 2003
Location: Pleasantville, NJ
If we could have new colours to portray armour I don't see a problem. Also, a pixel here and a pixel there (extending the silhouette) could go a long way toward this portrayal.

I find Dr. D's gun renderings at sprite size hard to believe. But if he really was working with the same number of pixels we get for sprite sized weapons armour would be a piece of cake.

I don't see the problem.

Report message to a moderator

Sergeant Major
Re: Improving Original JA2 graphics [message #179407] Sat, 29 March 2008 07:42 Go to previous messageGo to next message
Kaerar is currently offline Kaerar

 
Messages:2022
Registered:January 2003
Location: Australia :D
Its not the sprites being the problem. The coding is there to change the guns on cue but it isn't for armour and LBE. I agree that it would be great if Lisac and Dr-D could work on this together to update the sprites, but we will probably need 4-5 people helping them too. If a coder or two could work on adding calls to change armour and LBE gear, we can add almost whatever we wanted. Hell maybe even a set of pliers and a gun lying on the ground while someone repairs!!

Report message to a moderator

Lieutenant

Re: Improving Original JA2 graphics [message #179438] Sat, 29 March 2008 14:34 Go to previous messageGo to next message
BirdFlu is currently offline BirdFlu

 
Messages:438
Registered:September 2007
Location: Lampukistan
I. PNGs
I think the main problem with png images will be the blitting. If i have seen it correctly,
then almost every blitting function works on 'ETRLEObject's (these are the compressed .STI
subimages). That is you cannot just push an arbitrary block of data (unpacked image data) into
the function and expect it to work. You would either have to convert pngs into ETRLEObjects
(not really an option) or you would have to change the blitting functions, which should not be
thaaaaaaaat big of a problem, as the STI/ETRLE compression is by all means trivial. The actual
problem is the inline assembler code.

Another point is transparency. Can someone give me a specific example of what you would do with
a 50% transparent image. I could think of some examples myself, but just want to know what others
are expecting.

II. 2D vs. 3D
There is this discussion about a 3D engine and as I see it, there were mostly requests for an
engine and there was almost noone who actually knows how a 3D engine works or how Vertex processing or
Fragment processing works or how GPU shaders work (I may be wrong in that point). This knowledge
would be really helpful to program an engine or even to use it, as it might help to find where
the problem lies, if something is not going as expected. If there is noone who could work on it
(or not enough people), then the 3D engine will stay a dream for a very long time. Well, unless you
take the JA3 or JAZZ: Hired Guns or a similar engine. But then again, you don't have access to the
source code of these engines and thus the possible modifications would be quite limited.

And by the way, what's wrong with 2D?

III. My Engine
The main ideas of my engine are these.
- replace the current rendering engine as a combination would be impossible (directx -> opengl)
- definition of all elements with local coordinates -> no more global '#define'-crap
- simple setup of all graphical elements
- extensible and replaceable graphical elements

As the topic of this thread are layered sprites, let me use them as an example. You would have
two graphical objects that can render normal sprites and layered sprites. Then you could just replace
old objects with new ones, image by image and animation by animation. You would get a funny mixture
of rendering results in the first place, but at least you have something. You replace the most common
animation first and the least common animations last. Thus the mentioned 'problem' would gradually
go away.

Then there is the objection of why doing the layered sprites stuff anyway if they are going to change
only a couple of pixels on a given object. That is true, but it also doesn't have to stay this way.
We could use larger objects (higher resolution), and i am also thinking about zooming in and out
of the scene, you know, supreme commander style. That would make the visibility problem a lesser problem.

Report message to a moderator

Master Sergeant
Re: Improving Original JA2 graphics [message #179445] Sat, 29 March 2008 16:20 Go to previous messageGo to next message
Kaerar is currently offline Kaerar

 
Messages:2022
Registered:January 2003
Location: Australia :D
Transparency to allow anti-aliasing for the edges of guns (less hard edged jaggies) mainly. But it could also be put to use in the interface for transition effects and thing like superimposing the inventories over the top of the rest of the GUI for instance.

To change a couple of pixels is pretty much all us gfx boys do! There is only a couple of pixels difference between bad and great, but mainly its for the immersion in the game. If your IMP picks up a G11 and the image on your character is an M16, it kinda removes that immersion. So if you have layered sprites and a good 3D engine (or a pseudo 3D plugin for PS allowing 2D to be rotated in 3D) then you can change the sprites very quickly.



As for your engine I think its a great idea. Can you link in more realistic maps and more detailed characters? Will you use 3D and limit it to the 2D iso viewpoint? That may help for creating new guns and characters. Someone mentioned disliking block faced characters from 3D, but with games like CoD4 and GRAW2 they seem to have faces done really well so I don't think that is an issue any more.

If you could do the Supreme Commander zoom you would be classed in the realm of human gods! Please do that would shut the CQB vs Sniper battles up Smile

Report message to a moderator

Lieutenant

Re: Improving Original JA2 graphics [message #179459] Sat, 29 March 2008 18:30 Go to previous messageGo to next message
Arethusa is currently offline Arethusa

 
Messages:24
Registered:August 2006
Location: Connecticut
BirdFlu
And by the way, what's wrong with 2D?

The biggest problem is extensibility. If I want to make a new gun and add it to the game, it's pretty trivial if it's 3D. I make a model, uvmap it, and skin it. A bit of quick coding for stats following established guns already ingame, and I'm almost there. If I'm feeling exceptionally ambitious, I can make a few animation sets that will be blended into existing animations (ie I'm animating at most parts of the upper body). That's it. With 2D, the process is an excruciating geometric hell of rendering every possible combination by hand.

There are plenty of other problems. It's hard to update. Visibility is bad, especially with the standard set by games like Silent Storm, which may have been far from perfect, but it did do a very good job with a number of things, including its use of 3D. Everything else you said I more or less agree with. I just think people should take a 3D engine more seriously and balance that against a consideration of the enormous disadvantages 2D represents. There's a reason no one uses it anymore.

Report message to a moderator

Private 1st Class
Re: Improving Original JA2 graphics [message #179470] Sat, 29 March 2008 19:10 Go to previous messageGo to next message
the scorpion

 
Messages:1834
Registered:September 2004
Location: CH
the reason probably is development ease and speed, (costs) and customer expectations. For many games, it might not even be the looks themselves (3d often looks poor too)

for the characters alone, 3d might be an option. But then, there should be a way to keep the advantages of isometric games, especially the very large maps

in 3d, you either have tiny ranges like in silent storm. i think this is a no-no

or, you have characters at a couple of meters distance look tiny. No-no as well.

so probably the best thing would be if only the characters themselves be a 3d model but with fixed sizes so we'd get the advantages of both systems, iso and 3d.

some hybrid kind of thing if just ja2's animation system is replaced by 3d. But then, layered sprites might have a similar effect, but be more work art-design wise, while the 3d character engine might cause more coding effort.

but that's just guessing. can't judge these things myself.

Report message to a moderator

Sergeant Major
Re: Improving Original JA2 graphics [message #179471] Sat, 29 March 2008 19:12 Go to previous messageGo to next message
Kaerar is currently offline Kaerar

 
Messages:2022
Registered:January 2003
Location: Australia :D
Have you read what Birdflu said earlier about his engine? He is thinking of implementing a Supreme Commander style of zoom interface. That I believe would solve all the range issues.

Report message to a moderator

Lieutenant

Re: Improving Original JA2 graphics [message #179472] Sat, 29 March 2008 19:16 Go to previous messageGo to next message
the scorpion

 
Messages:1834
Registered:September 2004
Location: CH
i doubt it. many players hate having to zoom in and rotate cameras and all that crap, that's why they play ISO games.

i personally would want the game perfectly playable without any zoom. Zoom only for showing some details (whatever nature they might be...) to give an additional bonus. But the important design decisions must be taken before the zoom feature comes into play, otherwise you get the same mess many modern games have with their cameras.

Report message to a moderator

Sergeant Major
Re: Improving Original JA2 graphics [message #179473] Sat, 29 March 2008 19:19 Go to previous messageGo to next message
Arethusa is currently offline Arethusa

 
Messages:24
Registered:August 2006
Location: Connecticut
Kaerar
Have you read what Birdflu said earlier about his engine? He is thinking of implementing a Supreme Commander style of zoom interface. That I believe would solve all the range issues.

That is impossible with 2D. I imagine he was talking about something else.

the scorpion
i doubt it. many players hate having to zoom in and rotate cameras and all that crap, that's why they play ISO games.

i personally would want the game perfectly playable without any zoom. Zoom only for showing some details (whatever nature they might be...) to give an additional bonus. But the important design decisions must be taken before the zoom feature comes into play, otherwise you get the same mess many modern games have with their cameras.

No one complained about Silent Storm's camera, which pretty quite good. It's not really that big of a deal.

Report message to a moderator

Private 1st Class
Re: Improving Original JA2 graphics – Sprite[message #179482] Sat, 29 March 2008 22:22 Go to previous messageGo to next message
Mauser is currently offline Mauser

 
Messages:756
Registered:August 2006
Location: Bavaria - Germany
concerning useable and powerful 3D engines (which is not the topic of this thread anyways) maybe checking out the open source freespace 2 engine could prove worthwihle?

http://www.hard-light.net/

http://scp.indiegames.us/news.php

it

Report message to a moderator

First Sergeant
Re: Improving Original JA2 graphics [message #179505] Sun, 30 March 2008 02:14 Go to previous messageGo to next message
BirdFlu is currently offline BirdFlu

 
Messages:438
Registered:September 2007
Location: Lampukistan
some thoughts and questions about the 3D engine

1. considering graphics ONLY, what would or should be the difference to, let's say, Brigade E5?

2. what should be the minimum requirements for a possible 3D engine?

3. should the actual game (mapwise) be in 3D or just a subset of it or should it be a whole new mapset?
-> if it is the whole game, then it can't be fully released until ALL maps are converted

4. if there is a 3D engine, then fixing the camera for isometric view is quite simple. It is actually
much simpler than creating an interface for arbitrary viewing directions.

5. don't underestimate the memory requirements for large 3D environments, especially as memory on
graphics board is quite limited (alse see point 2). In 2D you just have a bunch of textures, but
in 3D you have at least the same amount of textures and you also have a lot of geometry data.

6. If you go the 3D way, then you have to convert almost every graphical element (maps, weapons, animations)
to its 3D counterparts. If you stay in 2D you could reuse old stuff and upgrade or replace it gradually.
I would say, that the gradual approach is more motivating for the creators (i.e. US) as you see
that development is moving forward (slowly, but usable all the time) in contrast to the "leap"-approach,
where you have only 20% of the work done and still have to do 80% until you can call it remotely usable.

7. A 3D engine will probaly require a modified or even a new physics engine. Don't know how much work
this would require.

8. I would say a combination of "2D-Background" with 3D foreground elements (weapons, mercs, etc.) is an idea worth
thinking about. I mean we have limited resources and using a simpler approach would probably be more fruitful.

---------------------------
Quote:

Quote:
Have you read what Birdflu said earlier about his engine? He is thinking of implementing a Supreme Commander style of zoom interface. That
I believe would solve all the range issues.

That is impossible with 2D. I imagine he was talking about something else.
Why would that be impossible? You have a bunch of texture that you render on a bunch of quads. Zooming in and out
would require some scaling of the quads and use of a mipmapping-mechanism for the textures (so it doesn't look like shit).
Are we talking about the same thing?

Quote:

but then, there would still be the issue with the very limited and outdated JA2 2D engine and especially the very limited color palettes.
it

Report message to a moderator

Master Sergeant
Re: Improving Original JA2 graphics [message #179510] Sun, 30 March 2008 04:56 Go to previous messageGo to next message
Arethusa is currently offline Arethusa

 
Messages:24
Registered:August 2006
Location: Connecticut
BirdFlu
Are we talking about the same thing?

I don't think so. I think you're talking about the ability to switch between tactical and global view, then? Not impossible in 2D (and an exceptionally crude form of this exists in JA2 already), but not very useful, I think, without a much better (3D) engine and graphics implementation.

Anyway, if this is seriously possible and worth discussing, I think we should at some point soon start a new thread specifically for this. Somewhat more importantly, as I don't know this community very well, are there people who knows graphics programming? To call this ambitious is an understatement, and it requires people who know this stuff and have the time to dedicate to it.

Report message to a moderator

Private 1st Class
Re: Improving Original JA2 graphics [message #179515] Sun, 30 March 2008 06:11 Go to previous messageGo to next message
Kaerar is currently offline Kaerar

 
Messages:2022
Registered:January 2003
Location: Australia :D
Already did Here

As to the zooming have you played Supreme Commander? I love the zoom ability in that, it goes a little too far out but its a step in the right direction. No need to constantly baby the minimap any more.

Lets continue 3D discussions in the link above.

Back to sprites. I would be happy to see the old ones updated along Lisac's ideas, hell that can go on and be added at the same time as work on Birdflu's or a full 3D engine.

Report message to a moderator

Lieutenant

Re: Improving Original JA2 graphics [message #179520] Sun, 30 March 2008 07:54 Go to previous messageGo to next message
Arethusa is currently offline Arethusa

 
Messages:24
Registered:August 2006
Location: Connecticut
Given the limited number of people here, honestly, one of the two projects should be decided on. People who can do the kind of sprite and 3D work necessary for working on lisac's 2D revision can do content creation work for a 3D update, and there's some overlap in the other direction. If we had more people, it might be another matter, but trying to do just one of these is gargantuan enough; both at the same time is pretty much suicidal.

Report message to a moderator

Private 1st Class
Re: Improving Original JA2 graphics [message #179537] Sun, 30 March 2008 15:55 Go to previous messageGo to next message
BirdFlu is currently offline BirdFlu

 
Messages:438
Registered:September 2007
Location: Lampukistan
Another problem i forgot to mention before are the comments from other users.

- If we stay in 2D, then it will be "so old-school", "so last century|millenium", "not up-to-date", etc.

- And if we go into a 3D world, then we will have "mediocre graphics", "why don't you use XYZ", and "ABC did it better anyway"

These are built-in frustrating moments. It has to be taken seriously or this project will die faster as it came up.

And i agree, we should concentrate on only one project.

Report message to a moderator

Master Sergeant
Re: Improving Original JA2 graphics – Sprite[message #179542] Sun, 30 March 2008 16:57 Go to previous messageGo to next message
Lt.Havoc is currently offline Lt.Havoc

 
Messages:34
Registered:April 2006
Location: Germany

Well, I think that any graphic improvment, even if its just 3d Medicore graphics will still look better then JA2

Report message to a moderator

Private 1st Class
Re: Improving Original JA2 graphics [message #179577] Mon, 31 March 2008 01:05 Go to previous messageGo to next message
Berserk00644 is currently offline Berserk00644

 
Messages:8
Registered:March 2008
just my 2 cents but has anyone tried Myth II's engine it uses 3d maps with 2d sprites for units

Report message to a moderator

Private
Re: Improving Original JA2 graphics – Sprite[message #179581] Mon, 31 March 2008 01:44 Go to previous messageGo to next message
Mauser is currently offline Mauser

 
Messages:756
Registered:August 2006
Location: Bavaria - Germany
Berserk00644
just my 2 cents but has anyone tried Myth II's engine it uses 3d maps with 2d sprites for units


so does the total war engine. but that

Report message to a moderator

First Sergeant
Re: Improving Original JA2 graphics [message #179582] Mon, 31 March 2008 02:05 Go to previous messageGo to next message
BirdFlu is currently offline BirdFlu

 
Messages:438
Registered:September 2007
Location: Lampukistan
Quote:
If we really are only 4 months from JA3, I don't think either of these is really worth pursuing unless that game is expected to not be moddable at all.

So, am i seeing this right. When JA3 comes out and they don't screw it up and the engine is halfway moddable,
then development of 1.13 will just shut down (completely)? And does that mean that all projects, that are in development right now, basically futile?

[Updated on: Mon, 31 March 2008 02:10] by Moderator

Report message to a moderator

Master Sergeant
Re: Improving Original JA2 graphics [message #179584] Mon, 31 March 2008 03:17 Go to previous messageGo to next message
Kaerar is currently offline Kaerar

 
Messages:2022
Registered:January 2003
Location: Australia :D
No I don't think JA3 will hold a candle to JA2. Its going to be different so there is really gonna be no comparison. We should look at them as separate games wit different design concepts (Don't think any of the Sirtech crew are being used at all).

1.13 on the current JA2 platform will still be played by most people here on the forums as a lot of them had a say in what happened during the development. It won't stop me playing JA2 I know that much Wink

Report message to a moderator

Lieutenant

Re: Improving Original JA2 graphics [message #179589] Mon, 31 March 2008 03:43 Go to previous messageGo to next message
Arethusa is currently offline Arethusa

 
Messages:24
Registered:August 2006
Location: Connecticut
If JA3 is moddable, why not just move 1.13's conceptual advances over? JA3 should at least provide a much more robust engine and amount of content to work with.

Report message to a moderator

Private 1st Class
Re: Improving Original JA2 graphics [message #179591] Mon, 31 March 2008 04:02 Go to previous messageGo to next message
Kaerar is currently offline Kaerar

 
Messages:2022
Registered:January 2003
Location: Australia :D
That is the hope. It uses the Silent Storm Engine though which while designed for the right reasons is about as bad as JA2 initially was to modify. I remember the hacks we had to do to get stuff to work! I hope its more moddable but there is no guarantee, so why not continue working on something we know is moddable and we have the source to, rather than worrying about a game that isn't released yet.

We can also translate what has been done over to other engines given the time and people. Its all a matter of where we want to go with the project, if we ever really start instead of gassing about it Wink

Report message to a moderator

Lieutenant

Re: Improving Original JA2 graphics [message #179628] Mon, 31 March 2008 17:09 Go to previous messageGo to next message
lisac is currently offline lisac

 
Messages:92
Registered:July 2006
Location: Austria
Nice to see there are people interested in seeing this finished. I really don't have time to go into every aspect of the previous posts, so I'll just leave an interesting link for all of us:

http://tionline.ru/

And a screen:

http://tionline.ru/i/screen1.jpg

This is how the game could look like after the face-lift. Is it worth it? Depends on it how much you like your JA2 copy...

And I'd definitely go with the existing 2D source code (which even might be upgraded to a certain level, using 3D objects on a 2D background, OpenGL - thanks goes to BirdFlu) rather than with a or half-(or non-)moddable game for which you'll have to crack the hard-coded pieces of the executable in order to achieve the simplest thing in game (yes, I'm talking about the upcoming JA3).

Zoom is a nice idea, but not the imperative. Original system with two maps (strategic, tactical) worked perfectly - no repair needed.

I'll be around, keep jabbering Smile

Report message to a moderator

Corporal 1st Class
Re: Improving Original JA2 graphics [message #179629] Mon, 31 March 2008 17:17 Go to previous messageGo to next message
Kaerar is currently offline Kaerar

 
Messages:2022
Registered:January 2003
Location: Australia :D
That LoD would be perfect. The zoom I would be in favour of for maps that allow decent sizing. So you can zoom out to a max level for Sniping and zoom in for CQB. More engaging I think.

Can multiple above ground buildings work?


That game also looks like "Worms" with humans instead!

Report message to a moderator

Lieutenant

Re: Improving Original JA2 graphics – Sprite[message #179635] Mon, 31 March 2008 19:40 Go to previous messageGo to next message
Lt.Havoc is currently offline Lt.Havoc

 
Messages:34
Registered:April 2006
Location: Germany

Now, that screen looks impressive. What kind of engine is that? Fallout? You really think its possible to get JA2 to look THIS good?`

Report message to a moderator

Private 1st Class
Re: Improving Original JA2 graphics [message #179652] Mon, 31 March 2008 21:47 Go to previous messageGo to next message
Khor1255 is currently offline Khor1255

 
Messages:1817
Registered:August 2003
Location: Pleasantville, NJ
That does look cool but it would require quite a bit more than just sprites. In fact the sprites themselves look cartoonish compared to the scenery. Those brightly coloured vests stand out like a sore thumb.

I don't see anything like this getting done for at least 5 years. But it would be nice to be wrong here.

Report message to a moderator

Sergeant Major
Re: Improving Original JA2 graphics [message #179664] Mon, 31 March 2008 23:55 Go to previous messageGo to next message
KeldorKatarn is currently offline KeldorKatarn

 
Messages:37
Registered:May 2006
Location: Germany
Have you considered the FIFE engine for this?

http://wiki.fifengine.de/images/b/b4/2007.2.007.jpg

http://www.fifengine.de

Report message to a moderator

Private 1st Class
Re: Improving Original JA2 graphics [message #179666] Tue, 01 April 2008 00:00 Go to previous messageGo to next message
Marlboro Man

 
Messages:1159
Registered:October 2005
Location: USA
I had always thought the FIFE engine would be ideal.

Report message to a moderator

Sergeant Major

Re: Improving Original JA2 graphics [message #179669] Tue, 01 April 2008 03:04 Go to previous messageGo to next message
lisac is currently offline lisac

 
Messages:92
Registered:July 2006
Location: Austria
Hmmmmm...

@Kaerar: the game is heavily inspired by JA2 and Fallout (Tactics), it's the best match currently I could find to show what I'm up to. 2 or 3 LODs wouldn't bother me (as player), I beleive.

@Lt.Havoc: it's really hard to say how much we can do to make JA2 look like that, but ATM this might be something we're streaming to.

@Khor1255: stop nitpicking, you old fart Wink Yes, it'd go way beyond sprites, I guess.

@Mauser: you're absolutely right. Just don't forget it'd take far less time and work to recreate all static objects (crates, walls, doors...) than our animated beloved heroes containing thousands of animation frames. The biggest problem organizing and leading such a project is my free time. Only thing I can estimate right now is that I'll have more of it in a month or two...

@KeldorKatarn: FIFE is exactly what we need... Graphically. Adapting the current JA2 v1.13 source code to it, especially regarding the LUA scripting system, wouldn't be that easy, don't you think? On the other note, the progress of FIFE development is somewhat slow (slim alpha release up to date), so we'd be very dependent on the FIFE devs and their milestones.

@MarlboroMan: give me a cigarette (although I've quit 8 years ago Smile )...

Seriously, people, don't expect wonders. What we need here are talented coders more than anything (i.e. BirdFlu) - making new sprites can be learned quite fast (in a few hours, with a proper tutorials and tools), and it can be learned by almost anyone (my cousin excluded).

Question for a talented youngster: is it possible to use OpenGL to represent all graphical elements in the game? Examples:

Laptop screen: bunch of textured rectangular polygons.
A ground tile (tactical map): one textured square polygon, put in isometric perspective (iso)
A crate (tactical map): one textured 3D box containing 6 polygons, iso
A chair (tactical map): one textured 3D object containing 40-50 polygons iso
A character (tactical map): one textured 3D object containing 400-500 polygons iso

And I don't want to hear NO as an answer :axe:

Report message to a moderator

Corporal 1st Class
Re: Improving Original JA2 graphics [message #179672] Tue, 01 April 2008 04:31 Go to previous messageGo to next message
Arethusa is currently offline Arethusa

 
Messages:24
Registered:August 2006
Location: Connecticut
Yes, it's possible to recreate everything under opengl.

Report message to a moderator

Private 1st Class
Re: Improving Original JA2 graphics [message #179673] Tue, 01 April 2008 04:50 Go to previous messageGo to next message
lisac is currently offline lisac

 
Messages:92
Registered:July 2006
Location: Austria
Arethusa
Yes, it's possible to recreate everything under opengl.

Yes, theoretically it's possible to represent my grandma's ass using OpenGL too, I know that.

Actually, when I look at that screenshot, I guess BirdFlu has already managed to recreate laptop. What amount of work would be needed to support other objects, like walls, crates, trees..?

Also, what kind of 3D format can be supported within OpenGL? Lightwave's native format is LWO (for objects) and LWS (for scenes and animated objects). We need to think about conversion too...

Report message to a moderator

Corporal 1st Class
Re: Improving Original JA2 graphics [message #179674] Tue, 01 April 2008 06:13 Go to previous messageGo to next message
KeldorKatarn is currently offline KeldorKatarn

 
Messages:37
Registered:May 2006
Location: Germany
OpenGL is just an API. I doesn't have native support for any file structures or something like that.
It can support any file as long as you write an importing routine for it.

Anyway.. about FIFE again. I think it would be easier to use an already existing engine than writing a completely new graphics engine.

Dependency of an engine is, well.. pretty much game business standard. Making a game with a custom engine is not very common because it simply takes too much time.

About their progress.. well nobody stops the people using this to integrate it into JA2 from helping those guys complete needed features..

And about their alpha status.. well.. what they have is alpha.. yes.. but what is everything else we've got so far aside from not existing?

Report message to a moderator

Private 1st Class
Re: Improving Original JA2 graphics [message #179675] Tue, 01 April 2008 06:20 Go to previous messageGo to next message
Arethusa is currently offline Arethusa

 
Messages:24
Registered:August 2006
Location: Connecticut
lisac
Arethusa
Yes, it's possible to recreate everything under opengl.

Yes, theoretically it's possible to represent my grandma's ass using OpenGL too, I know that.

Actually, when I look at that screenshot, I guess BirdFlu has already managed to recreate laptop. What amount of work would be needed to support other objects, like walls, crates, trees..?

Also, what kind of 3D format can be supported within OpenGL? Lightwave's native format is LWO (for objects) and LWS (for scenes and animated objects). We need to think about conversion too...

Can you elaborate? As KK said, opengl is just an api. There's a lot of room in there, and I'm not clear on how you would want to implement "support other objects, like walls, crates, trees" or what you specifically mean by that.

Additionally, from personal experience and what I've seen in basically every engine I've ever encountered, editor formats (like the .lw* formats) are not generally suitable for realtime use with games. Depends on a lot of things, though, and exporters are not difficult to come by.

In any case, I also agree with KK that working from an existing engine, even one of the stronger open source projects, may be the most viable route to go with.

Report message to a moderator

Private 1st Class
Re: Improving Original JA2 graphics [message #179677] Tue, 01 April 2008 08:04 Go to previous messageGo to next message
KeldorKatarn is currently offline KeldorKatarn

 
Messages:37
Registered:May 2006
Location: Germany
This is actually quite easy..

you need to ask yourself one thing first.. do you want the game to be real 3D or 2D

(this doesn't mean hills or 3d terrain or something like that, it means, what ENGINE do you want to use. One can just as well make a tile based 3d engine, but it is a completely differnt approach.

3D Will mostly use meshes for buildings and characters, a 2D engine will mostly use sprites. While sprites can be done with a 3D engine too, using a 3D engine to replicate a 2D game doesn't really make much sense since without 3d objects you cannot use any 3d effects like dynamic lighting, shaders and the like (except postscreen shaders and stuff like that).

If you want to remain true to the game and keep it completely 2D sprite based and just want to improve the graphics, then this is a different thing.

For both solutions I'd really recommend using existing engines. There are engines for both and one can work with both and improve them or modify them for the purpose, but the codebase already exists.
Writing something new is a project that will probably take years.

And the questions about OpenGL... OpenGL is nothing but an API, not more not less. It just offers a simple way to talk to the graphics card, just like direct3D although both API's have a different approach to that.

OpenGl will let you do pretty much anything, as long as you code it.. making walls or treed or backgrounds is not something OpenGL does understand. OpenGL lets you draw lines, points, triangles, colored textured and lit. and that's it. everything else you must program on top of that. THat's what's called an engine. OpenGL is no engine. OpenGL is the tool you write your engine with and engine programming is among the hardest things a game programmer can do.

So depending on what you really want to achieve here, go for an existing engine.

I don't really understand concerns like "we must modify something for LUA support" or stuff like that.. if FIFE has support for LUA.. fine.. nobody forces anyone to use that. From what I see here all that would be used for JA2 would be the graphics, possibly map generation and GUI widget parts.

The only job would be to identify all graphics engine parts of JA2, eliminate them, and replace them by the new engine and adjust the interfaces so they fit together. the game itself should not change one bit.

If you plan to programm an entirely new engine.. to be honest I wouldn't really go that way... but if then I personally would go for a complete port to C#. The language is easier, cleaner and has more IDE support for rapid development and complete Object Oriented approach. Porting the game logic is the smallest part in this and I never tried this becasue porting the engine would be a pain in the butt, so I'd only do that if a complete redevelopment was in order. So if you planned on doing that I'd go this way (oh and please don't anybody start any discussion how games cannot be made in C# and .NET or how C# is a MS toy, go read up on things first before starting a programming language bashing).

I still wouldn't recommend this though since as I said, either way this would be years of work for a 5 man team.

Porting to an existing engine should be easy, and since FIFE was based on the Fallout engine which it seems to be able to replicate already I don't see how this could not be used for JA2.

But the most important question is.. how many people are available for this job?

THis would be a 6 month 5-10 hours a week job for a team of about 5 people which have at least 2-3 years of C++ (AND C!) experience and at least 2 of them should have experience in game and graphics programming to at least understand the new and the old engine and their interfaces.

Report message to a moderator

Private 1st Class
Re: Improving Original JA2 graphics [message #179679] Tue, 01 April 2008 09:01 Go to previous messageGo to next message
Arethusa is currently offline Arethusa

 
Messages:24
Registered:August 2006
Location: Connecticut
KeldorKatarn
I don't really understand concerns like "we must modify something for LUA support" or stuff like that.. if FIFE has support for LUA.. fine.. nobody forces anyone to use that. From what I see here all that would be used for JA2 would be the graphics, possibly map generation and GUI widget parts.

Lua is exceptional as an external scripting language (doesn't hurt that you can write a lot of other stuff in it). That's where it's useful; it's not strictly relevant to the graphics except in that it makes making the graphics a lot easier once you get to content creation

Report message to a moderator

Private 1st Class
Re: Improving Original JA2 graphics [message #179690] Tue, 01 April 2008 13:51 Go to previous messageGo to next message
KeldorKatarn is currently offline KeldorKatarn

 
Messages:37
Registered:May 2006
Location: Germany
I know about LUA. All I was trying to say was, if the JA2 code structure doesn't allow for LUA usage for the game content, then nodody forces one to use LUA, just because FIFE offers support for it.
An engine offers services. A game can use as many or as few of them as it wants.

And after all this is mainly about changing the graphics part, not the scripting part. That would be a different project (although with that in mind FIFE would at least already support that for a future usage)

Report message to a moderator

Private 1st Class
Re: Improving Original JA2 graphics [message #179694] Tue, 01 April 2008 14:20 Go to previous messageGo to next message
Kaerar is currently offline Kaerar

 
Messages:2022
Registered:January 2003
Location: Australia :D
That looks full 3D mate! Is it? I've heard of FIFE before but I can't think of why or where from :s

Report message to a moderator

Lieutenant

Re: Improving Original JA2 graphics [message #179697] Tue, 01 April 2008 14:37 Go to previous messageGo to next message
lisac is currently offline lisac

 
Messages:92
Registered:July 2006
Location: Austria
I see your point now KK.

Sorry for misunderstood, I thought you're talking about "porting" the current source code completely into FIFE (forgive me for choosing this verb, I'm not a professional coder). If I've understood you correctly, you're suggesting us to take only a part of the existing FIFE code, and that specific one concerning graphics, and to implement it in the JA2 source code. If that's true, then that might be a good option.

Are you fond of the FIFE engine then and to what extent? How about JA2 source code? Anything you could help us with? Anyone you know (or could recruit) for the cause?

Also, what do you think about BirdFlu's idea/progress?

From my point of view (my point of view, as a graphic content creator) I'd always prefer 3D objects over 2D sprites. It takes less time to create it and is a way easier to control, not to mention advanced effects (zoom, lighting, LOD etc.) and the screen resolution problem.

Talking about the whole work... I guess two teams will be needed, the graphic team and the coding one. I can take care about the first one, but in a few weeks only. I believe there's people interested in doing that part of job, and I'm gonna show them how to. The coding group... Well, I can't tell right now, but we need it too.

I surely wanted to say something more, but forgot it. Oh, what the hell...

Report message to a moderator

Corporal 1st Class
Re: Improving Original JA2 graphics [message #179702] Tue, 01 April 2008 15:14 Go to previous messageGo to next message
BirdFlu is currently offline BirdFlu

 
Messages:438
Registered:September 2007
Location: Lampukistan
OK, i downloaded the FIFE engine and looked at it (not too closely).

Kaerar
That looks full 3D mate! Is it? I've heard of FIFE before but I can't think of why or where from :s
Definitely NOT 3D. Well, not in the sense that it uses 3D-objects.

My thoughts about it are somewhat divided. Sure, it has video, sound, intput and everything (?) what you need to start with.
But it doesn't know anything about JA2 file formats

My 'engine' is more like in a pre-pre-pre-pre alpha stage, but it loads and displays JA2 files (sti [sti-animations], pcx, slf),
has some limited input handling capabilities and has no audio whatsoever.

So far so good (or bad?). Then I looked a little bit closer at the rendering stuff. The FIFE engine uses SDL_Surfaces or
OpenGL textures and the rendering itself is "old-school", that is just drawing a rectangle at a given position. The handling
of all the rectangles (especially visibility determination) has to be done in the 'non-engine'-code, i suppose. As i said,
i have not looked at it too closely, so i may be wrong in some parts. Then i apologize and hope that those, who know better,
can correct me.

I am using a Scene-Graph, which is (as i think) a more modern approach.

And now comes the part where i think that the FIFE angine could give us more trouble than we need.
All the images are saved as single textures and the rendering of basically everything is done in
OpenGL's immediate mode, that is calling glVertex3f, glTexCoord etc.
So, first we don't have multitexturing available, so applying palettes has to be done prior to rendering,
which is not bad by the way, it just consumes approximately four times more video memory.

Second, immediate mode is slow as hell. Honestly, i have to admit that i am using immediate mode as well, but
i plan to change it. The problem is that with large and complex scenes and many very small images you have
to call OpenGL functions too often. And this can really kill rendering performance.
I have seen it in my engine. Depending on how much is actually happening on the screen, i had framerates
between 50 and 2000 fps, and it was just the gui. Rendering a map with a lot of tiny tiles and a huge amount
of little images in immediate mode could bring performance down to one digit framerates, seriously. This
HAS to be taken care of.

BTW, you should not only show the great images
http://wiki.fifengine.de/images/b/b4/2007.2.007.jpg

but also the other images, like
http://wiki.fifengine.de/images/8/87/2008.1.006.jpg

Again it is not only the engine that gives great results, it is also the data you use.

Quote:

Question for a talented youngster: is it possible to use OpenGL to represent all graphical elements in the game? Examples:


Quote:
Laptop screen: bunch of textured rectangular polygons.

Yes.

Quote:
A ground tile (tactical map): one textured square polygon, put in isometric perspective (iso)

Yes. Depends on the data you have. If it is ONE big texture, sure. Beware of exceeding maximum texture sizes.
If you have a lot of "ground elements" you would have to build the texture first.
Perspective, or orientation of the texture in this case, doesn't really matter.

Quote:
A crate (tactical map): one textured 3D box containing 6 polygons, iso

Yes and depends. yes for a static crate. A crate that can be opened needs more consideration. can the inside
look like the outside of the crate? Animation itself has to be done and can be done via geometry transformations.
Is the moving part even (one rectangle) or concave/convex (probably more than one rectangle)?

Quote:
A chair (tactical map): one textured 3D object containing 40-50 polygons iso

Yes. But 40-50 polygons for static isometric perspective and a texture of not too large size?
Not worth the trouble.

Quote:
A character (tactical map): one textured 3D object containing 400-500 polygons iso

Yes. Characters are important. But then again, it depends on your zooming capabilities. Creating
and using polygons that fall on one pixel only is just wasted effort.

----------------------------

Quote:
using a 3D engine to replicate a 2D game doesn't really make much sense since without 3d objects you cannot use any 3d effects like
dynamic lighting, shaders and the like (except postscreen shaders and stuff like that).

A 3D engine would OGRE or Irrlicht or something similar. FIFE is a 2D engine, even if it uses a 3D-API.
And just because you don't have 3D objects, it doesn't mean you cannot use dynamic lighting (in the sense of definition).
Postscreen shaders can create some nice effects too.


Apart from all this, OpenGL just undestands vertex coordinates and plain bitmap data (of various formats).

Report message to a moderator

Master Sergeant
Re: Improving Original JA2 graphics [message #179710] Tue, 01 April 2008 16:07 Go to previous messageGo to previous message
KeldorKatarn is currently offline KeldorKatarn

 
Messages:37
Registered:May 2006
Location: Germany
I still don't quite get where you are really going with this.. are you planning on making this 2D with better graphics or convert to 3D..

if you want to keep it isometric and tile based then I absolutely don't see why a 3d engine is needed.

And the statement that 3d meshes are more easily created than 2D sprites is IMHO a very questionable argument, or simply wrong.

I also do not know why the talk is about a complete game engine with sound, input and everything. Why would that be needed? Ja2 has that already. I thought you just wanted to improve the graphics, so why kick the complete game engine and write that completely new. The rendering part would suffice...

If you guys are actually planning to go full 3D with meshes for everything I'd strongly advise against this. To have a good 3D engine, to design the shaders and effects, to model the meshes and texture them... I don't think you have the people for that, and if this is not done professionally, it will look really ugly.
Not to mention that I see absolutely no need for a full 3D approach. Zooming in is no problem in 2D, games like commandos show that. rotation is not really necessary, and IMO usually confuses the player more than it helps in an isometric game.
Please keep one thing in mind.. 3D graphics ages a lot faster than well done 2D graphics.. look at games like Panzer General. That game still looks ok today, and Panzer General II still looks great except for the resolution. Look then at Panzer General III and IV which introduced 3D engines for the hex-based game.. crappy models, totally blurred textures, horrible interface looks.
Stick to what's natural to the genre. There are lots of great 2D engine games out there. There is no need to make everything 3D just because 3D sounds cool. JA2's entire game mechanics are based on the fact that the game uses an isometric tilebased approach for its game world, and it works great. All that's a little aged is the looks, the resolution and the tiles.

So using a modern 2D engine that is able to use a higher resolution and better lighting (per pixel lighting for the tiles instead of per-tile lighting for example, and a few other effects) will totally suffice.

If you use OpenGL for this, fine, NP, but using OpenGL doesn't mean one has to make 3D models.

Let's say you take (or build) a 2d engine that has nice lighting (e.g using lightmaps and multitexturing for the tiles), supports some nice animated tiles for water and stuff like that, that uses some post-screen shaders for stuff like rain or storm and night, and other stuff, some bloom effects and things will really look great.

I can promise you one thing.. with a good 2d engine you have the chance to bring to near commercial level looks in no time.
In no way will you be able to get this to look commerical level using 3D. for that 3d engine development is way to fast developing and to competitive.

Use sprites but use them well, that's what I'd recommend. Take a good engine (FIFE or whatever else is around) or if you really want to, program one yourself, if you have the people for it, but stick to 2D.


Concerning my personal attitude towards FIFE.. I have nothing to do with it, nor do I use it for anything. I just ran across it a while ago and I was very impressed by it, not so much the looks or the features, since I never tested it or any project using it, but the very professional approach software engineering wise. they have a very very clean code base which is very seldom out there in open source or even commercial country.

About using parts of it or "implementing it into JA2".. I think you really don't know what an engine is really.. you don't take parts of an engine or implement it into anything.. an engine is no game.
An engine is an engine that provides services like rendering, input, sound, scripting, file handling whatever.

WHat I suggested was using the FIFE rendering engine to replace the current JA2 rendering engine (not game.. rendering engine!)
JA2 uses its own engine, a game isn't a complete source thing, it is made up of modules and JA2 is build on top of an engine just like any other game, only that JA2's engine was probably specially written and only used for that game, except unfinished business.

think of an engine as a programming library. it is nothing more. An engine is no application nor is it a game. It offers certain stuff that a programmer can use or not use, depending on what he needs.

I also wouldn't really care about what API the engine is based on, but only on its features and ease of use. THat's exactly what an engine is for. So you don't have to worry about the underlying API crap. If you wanted to worry about that you could have written the stuff yourself.

And I really really doubt the FIFE people have written anything that is going to produce single digit framerates. I didn't really follow your argument in that direction. All I know is, that whoever wrote that code and documentation knows quite a bit about modern software engineering approaches.

Btw.. what a scene graph should be good for in a 2D tile based game, using 3d rendering or not, I do not have the slightest idea, unless you define a scene graph different from what I think of when I hear the term.

WHat the other screenshots was for I don't know either. I didn't post the screenshot to show how great the engine looks, since an engine doesn't look at all. It provides services, it is the game and its ressources that produce the looks.
The screenshot was simply to demonstrate what level of looks for game the engine does support. Every engine in this world can produce crappy looks, even the CryEngine, so I don't really understand what the second screen was for.
That the game has to actually use the features before it looks good should be self-explaining I thought.

[Updated on: Tue, 01 April 2008 16:10] by Moderator

Report message to a moderator

Private 1st Class
Next Topic: Creating custom IMPs - A Tutorial
Goto Forum:
  


Current Time: Fri Mar 29 14:11:22 GMT+2 2024

Total time taken to generate the page: 0.03585 seconds