Jump to content

Elite Force Engine Feature List


  • You cannot reply to this topic

132 replies to this topic

#41 Scooter

Scooter

    The Canon Man

  • UberGames Admin
  • 2,545 posts

Posted 17 September 2007 - 12:14 AM

Add support for LCD display on Logitech G15 keyboard:
http://www.g15mods.c...iles/LCDSDK.zip

#42 GSIO01

GSIO01

    UberGames Developer

  • UberGames Developer
  • 1,021 posts

Posted 01 October 2007 - 08:19 AM

I don't know if this was already suggested before and I have no time to read the whole thread at the moment but I think updating the shaders would be a good idea as well ... e.g. glow(JK2/JKJA) or additional tcmods like offset (EF2 especially nice for lcars textures) would be nice

#43 TiM

TiM

    Administrator

  • UberGames Admin
  • 3,425 posts

Posted 30 November 2007 - 01:23 AM

Haha, I just bought a G15 and was doing some research on the LCD's API.

It's actually possible to get it working with EF right now, but you'd have to know exactly in memory where all the data is being stored as the game's being played out (Which is apparently possible with custom software).

And if PunkBuster was present, it would have a massive fit about that haha.
The reason being, even though there's not much vital information stored client-wise, you could still do stuff like find out if an enemy's standing behind you or something.

Another question is, what kind of information would you want displayed?

---

Yeah, I think that was one of the first things suggested. I'm not sure how it was done in JKA since IIRC, this was the era just before video cards started to have programmable pipelines added to them. It was probably a pretty funky combination of blend modes and operations upon the OpenGL pixel buffer. I wonder if I could ask James... better yet, get ahold of the freaking code haha

But yeah, bloom was already suggested. ;)

Huh.... okay... I thought EF already had that, but I'm not sure. I'm guessing all it does is bump the texture's co-ordinates up/down or left/right, right?

What other tcMod parameter shader commands do you have in mind?

-TiM

#44 TiM

TiM

    Administrator

  • UberGames Admin
  • 3,425 posts

Posted 30 November 2007 - 01:30 AM

*slaps forehead*

That picture up there.... it has to be HDR lighting lol. I clean forgot HL2 has HDR support. ;)

It's either that, or they used vertex/pixel shaders to exponentially ramp up the intensity the lighter the lightmap is, but that would start to limit the lighting quality pretty badly...

Speaking of which... I played Portal last night. Damn, that was short, but it was awesome. ^_^

I screwed around with the Portal gun for a while, and I think I know how it works hehe.

Considering that Q3 already has portal rendering in it already, I don't think it would all too hard to add....

-TiM

#45 Scooter

Scooter

    The Canon Man

  • UberGames Admin
  • 2,545 posts

Posted 01 December 2007 - 12:54 AM

Another question is, what kind of information would you want displayed?


Anything currently displayed by the HUD: health, ammo, FPS, etc.

#46 GSIO01

GSIO01

    UberGames Developer

  • UberGames Developer
  • 1,021 posts

Posted 03 December 2007 - 09:51 AM

Huh.... okay... I thought EF already had that, but I'm not sure. I'm guessing all it does is bump the texture's co-ordinates up/down or left/right, right?


Yes that's what offset does, it's a quite interesting tcmod as it is possible to rotate an image around texture coordinates that are not the center of the shader.

Don't know what other tcmods might be an good idea, I'll have to take a look at the different shader manuals of EF/Q3, EF2 and JK Series again.

An other suggestion:
[B]Example 16.: An example of a multi-texture shader[/B][INDENT]          textures/techdemo/mtexwater1
{
    cull none
    surfaceparm nolightmap
    surfaceparm trans
    surfaceparm water
    qer_editorimage textures/liquids/blue_water1.tga
    qer_trans 0.500000
    {
        map $whiteimage
        blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA
        alphaGen oneMinusDot
        rgbGen constant 0.000000 0.250000 0.750000
    }
if mtex
    {
        map textures/liquids/blue_water1a.tga
        blendFunc GL_ONE GL_ONE
        tcMod scale 0.330000 0.330000
        tcMod turb 0.000000 0.200000 0.000000 0.100000
        nextbundle
        map textures/liquids/blue_water1b.tga
        tcMod scale 0.660000 0.660000
        tcMod scroll -0.050000 -0.030000
    }
endif
    {
        map textures/liquids/blue_water1a.tga
        blendFunc GL_SRC_ALPHA GL_ONE
        alphaGen lightingSpecular
        tcMod scroll 0.070000 -0.040000
    }
}

2.7 if <0|1|mtex|no_mtex>
       Conditional execution for shader scripts. Must be terminated with an          endif (see endif).
       0: This script block is never processed.
       1: This script block is always processed.
       Mtex: This script block is only processed if the renderer is running in          multi-texture mode.
       No_mtex: This script block is only processed if the rendereri it not running          in multi-texture mode.

[/INDENT]

Multitexture shaders and conditional shaders - there are some more conditions in EF2 than listed in the Ɯbertools Documentation.

#47 TiM

TiM

    Administrator

  • UberGames Admin
  • 3,425 posts

Posted 03 January 2008 - 02:15 PM

I also want to get this book. :(
http://www.amazon.co...87812229&sr=8-3



I love my dad. He gave me this book as a 21st birthday present. :P

I've been cruising thru it, and although it's EXTREMELY complicated in some parts, I've learnt a few new cool things.

A few things worth mentioning is that since Q3 came out, OpenGL has changed quite a bit, so much that it's possible that some of the base graphics code in Q3 might be quite inefficient by today's standards.

I might be barking up the totally wrong tree here, but it seems it's possible to do a lot of cool things in OpenGL now like instantiate specific meshes and store them on the graphics card. From what I've seen, Q3 works by constantly streaming vertex data from the computer's main memory, which could be quite costly when it doesn't have to be.

Instantiating meshes would be awesome since it means a model would only have to be loaded once, but could be rendered on screen many many times (*cough* bridge chairs!)

Overall, the result we'd get would be being able to have much more detailed scenes without too much more of a performance hit.

I'm also trying to learn how the crap GLSL works... but that stuff requires some pretty l33t geometrical math skillz. >_<

-TiM

#48 TiM

TiM

    Administrator

  • UberGames Admin
  • 3,425 posts

Posted 04 January 2008 - 01:20 PM

Anything currently displayed by the HUD: health, ammo, FPS, etc.


It's possible to get the current FPS by linking the G15 applet with FRAPS. There's a small undocumented API that lets external applications pull that info from FRAPS (Stuff like current game, rendering API, current FPS etc).

I'm considering building my own G15 applet from scratch as a programming exercise. Current game FPS is high on the list.

This is of course after this mod's done. :(

-TiM

#49 TiM

TiM

    Administrator

  • UberGames Admin
  • 3,425 posts

Posted 04 January 2008 - 01:25 PM

Okay... I'll quit spamming this after one more post. :P

One more idea I had while I was jogging on the treadmill at the gym today. ^_^

It's already possible, but quite hacky: support for widescreen monitors.

It IS possible now, but it requires some extra console commands.

It'd be really nice if Q3 could detect the possible resolutions of the device it's running on and feed them back to the Video menu ingame...

Also... I've noticed that 2d elements gets stretched pretty bad in widescreen mode too...
This is probably because Q3 treats the monitor as being 640x480 ( ie 4:3 perspective) and converts the co-ordinates upwards when rendering (so... it's converting 4:3 perspective elements to widescreen perspectives like 16:10, would show a noticeable horizontal stretch)

ALL of that code is contained inside the QVMs tho... so I guess it's possibly fixable in there...

Hrmmmmmmmmmm.............................. :(

-TiM

#50 Lee

Lee

    Safety not guaranteed.

  • Members
  • 1,418 posts

Posted 05 January 2008 - 02:53 AM

I wonder if it's possible to code in moving mouths, like when it goes to a certain facial image, it changes into a different model that fits the image.

It's not brilliant but certainly can be easier and possibly more fitting than the mouths that EF2 has which just go up and down, even though they actually move.
3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117067982
14808651328230664709384460955058223172535940812848111745028410270193852110555964462294895493038196442881
09756659334461fnord28475648233786783165271201909145648566923460348610454326648213393607260249141273724587
006606315588174881520920962829254091715364367892590360011330530548820466521384146951941511609

#51 TiM

TiM

    Administrator

  • UberGames Admin
  • 3,425 posts

Posted 05 January 2008 - 03:09 PM

Yeah.... ^_^

Half-Life 2 uses vertex morph targets for its facial animation.

A whole tonne of facial poses are created by moving vertices around, and then the computer can then dynamically create expressions by blending multiple poses together.

That actually means that you have to in and actually make the mouth movements tho (I think EF2 was mainly automatic with a few manual bits here and there), whic equals a tonne more work.
Unless... it's possible to develop an algorithm which can match sounds to mouth shapes.... -_-

Mathematically, I doubt it would be too hard to create, but it's the kind of thing that would require a new model format for the game. MDR or MD3 wouldn't cut that in the slightest.

Hrmm, the XreaL project has imported the Doom 3 model format (MD5/MD5anim) across... but I don't know about it.

I'm curious about seeing if it's possible to maybe design our own format based on the Raven Ghoul 2 system...

One thing I really want is per-pixel hit detection... ^_^

-TiM

#52 TiM

TiM

    Administrator

  • UberGames Admin
  • 3,425 posts

Posted 11 January 2008 - 04:34 AM

Another crazy idea I had that could potentially benefit the engine's realisticness.

I've been trying to figure out how to get 'overexposure' on surfaces in maps.

Traditionally, when a lightmap is blended over a texture, if the lightmap is black, the texture becomes black, but if the lightmap is white, the texture is normal.

This majorly sucks since in RL, if a bright light shines at a surface, usually the surface itself becomes quite bright (this is a staple of the concept of HDR rendering).
This is usually CRITICAL for any map that's set in bright sunlight outside.

John Carmack kind of tried to fix this in Q3 by introducing the /r_overbrightbits CVAR that worked by ramping up your computer screen's gamma and then readjusting the lightmap to compensate (black = black, grey = normal, white = really bright).

The downside to this is that if Q3 exits unexpectedly, or if u have any other monitors attached to your PC, u can easily see the gamma being ramped up since it is usually enough to blind you. :P

Another downside is that this also usually means that the gamma will be overridden when you use 'windowed' mode and you're back to square 1.

Suffice it to say, the overexposure feature of Q3 is one impressively huge hack. :P

Now I noticed in HL2 that before Lost Coast and the advent of HDR rendering came out, that they had somehow solved this problem where you had really nice sunset scenes that showed proper contrasting, even in windowed mode.
I've been wondering why and have been screwing around with the CVARs in HL2 trying to figure it out, and it finally snapped haha.

In HL2, they appear to be ramping up the gamma of the textures as they're loaded in and then the adjusted lightmap is cast over them.
This is obvious when u type /mat_fullbright 1 into the game console, and the map suddenly becomes insanely bright. :)

So the difference here is that instead of ramping up the screen gamma to make the textures 'appear' bright and then using the lightmap to bring it down again, the textures are actually made really bright in the first place...

So... I wonder how viable this feature would be to add to the engine...

Either that, or we actually go ahead and incorporate an HDR rendering system.

I think what that entails is that the amount of data the lightmap stores is significantly increased, so it can store lighting values beyond 100%.

-TiM

#53 Scooter

Scooter

    The Canon Man

  • UberGames Admin
  • 2,545 posts

Posted 13 January 2008 - 07:16 PM

Would that also allow proper flashlight effects then too?

#54 TiM

TiM

    Administrator

  • UberGames Admin
  • 3,425 posts

Posted 14 January 2008 - 05:10 AM

I dunno.

I don't know how they do that in games haha. :(

I'm thinking it might be a pixel shader to purposely cancel out the lightmap where-ever the light hits or something... :S

-TiM

#55 Scooter

Scooter

    The Canon Man

  • UberGames Admin
  • 2,545 posts

Posted 22 June 2008 - 10:34 PM

Ragdoll physics is teh sux: http://www.naturalmo...om/euphoria.htm

#56 sharpkiller

sharpkiller

    Queen Fanatic

  • Members
  • 491 posts

Posted 23 June 2008 - 02:17 AM

Is that the physics engine they used in GTA IV? Anyway, that'd be neat to have in such an old game like EF :P

Sharpkiller.png


#57 Lannister

Lannister

    Senior Member

  • Members
  • 990 posts

Posted 23 June 2008 - 10:44 PM

Is that the physics engine they used in GTA IV?


It is, IMO it's one of, if not the best Physics engine currently available.

#58 Intercepter

Intercepter

    Member

  • Members
  • PipPipPip
  • 77 posts

Posted 21 July 2008 - 04:14 PM

i just love it how when you hit someone in your car, how they curl up and slide over the roof.
man, i dont play GTA 4 for the game, just for the plesure of running crowds over :P

#59 Lee

Lee

    Safety not guaranteed.

  • Members
  • 1,418 posts

Posted 21 July 2008 - 08:03 PM

I call it "Bowling."

Anyway, I really like how id did their panels in Quake 4. Just think, you could actually do stuff with LCARS instead of random noises.

Of course, it would be hard to learn what each button does.
3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117067982
14808651328230664709384460955058223172535940812848111745028410270193852110555964462294895493038196442881
09756659334461fnord28475648233786783165271201909145648566923460348610454326648213393607260249141273724587
006606315588174881520920962829254091715364367892590360011330530548820466521384146951941511609

#60 Intercepter

Intercepter

    Member

  • Members
  • PipPipPip
  • 77 posts

Posted 22 July 2008 - 04:43 PM

I thought about that back when i first used the turbolifts.
Where when you used a pannel, something popped up for you to interact with. like when you click on the turbolift pannels, the screen pops up for you to choose which floor to go to.

So instad of a tubolift floor selector, you could have say, a astrometrical (does that word even exist :P) display, so you could choose between different planets/ different species etc... appearing on the holo-table or whatever.



0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users