Aller au contenu

Photo

In the last 11 days VirusMan has done the following impossible things:


  • Veuillez vous connecter pour répondre
49 réponses à ce sujet

#26
Carcerian

Carcerian
  • Members
  • 1 108 messages
Talking faces / different emotions ala halflife? (Talk, Shout, Cheer, Happy, Angry, Sad, Tired, etc)

Posted Image

Could make for awesome cutscenes :)

Modifié par Carcerian, 16 juin 2012 - 07:16 .


#27
gutwrench66kg

gutwrench66kg
  • Members
  • 177 messages
that troll is exactly spot on.. so you could opt for a bloody one.. or if death came via fire, change texture to a burned one.

#28
OldTimeRadio

OldTimeRadio
  • Members
  • 1 400 messages
Posted Image

Edit: Whoops, edited the wrong post and blew away my explanation.  Basically, this is showing the ability to visually change states on a placeable with texture and being able to change the material of the placeable with the envmap switch.  Changing envmap seems to reset texture but I'm not sure if there's any way around that.

Posted Image

Modifié par OldTimeRadio, 17 juin 2012 - 03:30 .


#29
Rolo Kipp

Rolo Kipp
  • Members
  • 2 791 messages
<blowing dust...>

OldTimeRadio wrote...
@Rolo - Some of those may not be possible with this effect and some of them are arguably better done using aligned VFX. Assuming the nodes aren't borked anyway: See here and here. Right now this affect spams over the whole model- which is how it was intended in the first place. However, since we can use DDS with this effect (at least the way I've done it), spamming a full texture of an NPC with only part of it changed would not be terribly intensive, space-wise. There are some other gaps that need to be filled in such as whether these changes persist when a user leaves and re-enters an area (I don't think the do, so far) and exactly how many of them we get (995-ish?) to play with. For some reason I'm very sweet on this effect to display power meters with X levels of accuracy, or puzzles where the fill-line of a potion changes as the user increases or decreases it's contents.

Right. I was thinking about this last night. Basically, any model we wanted to use this on would have to be redone with a series of texture atlases. This also increases the value of reference textures, i.e. using a standard oaktree_*.dds for all oak trees regardless of the actual model geometry would allow you to have the oak trees transition from oaktree_0 (bare branches, winter bark) to oaktree_1 (spring) to oaktree_2 (summer) to oaktree_3 (fall) to oaktree_4 (dryad) to oaktree_5 (burned & charred)...

Having species specific reference textures would also allow for a more natural (and less CPU intensive) asynchronous texture swap. I.e. Cherry trees bloom, then apple the meadow flowers. The forests gradually shift from summer green to the reds & oranges of fall. Etc.

But, yes. I see no way to taget specific objects on a model. Barkskin & stoneskin, et al replace *all* texture references. Or, more accurately, divert (temporarily) the texture pointer for all objects on the model.

Building texture atlases is a lot of work and will simply not work with the dynamic models (PC), but I can see a huge benefit for tiles and placeables. Can we do this to tiles? Hmmm... my gut says no. Hope I'm wrong.

<...off an old atlas>

#30
Failed.Bard

Failed.Bard
  • Members
  • 774 messages
There's NWNXFuncs_GetSurfaceMaterial(location lLoc) in the windows version of Funcs, that seems to return the tiles surface material, so it must be possible to target a specific tile through the nwnx extensions. I don't know of any specific functions to return the tile itself or modify the settings though.

I expect VirusMan would have a much better idea if that was possible than I do.

#31
virusman

virusman
  • Members
  • 282 messages
@Failed.Bard - The server doesn't read tile models, it gets the material type from walkmesh.

Actually, there is an internal function in the client that allows to change a specific texture.
Up until now I've been unlocking features that have already been in the client code. Adding new features would require server plugin counterpart and more coding to handle scene updates, overlapping effects, etc.

#32
KlatchainCoffee

KlatchainCoffee
  • Members
  • 258 messages
The idea of changing facial expressions (usning an emote want?) sounds almost too good to be true.

Alternatively this could be used to overcome the limited head slots - 're-skinning' the faces that have similar size or shape (which could be coupled with proposed changeable hairstyles proposed in another thread).

A definite thumbs up on visible wound infliction.


Another idea, wich would be amazing if it's ever implemented (which is unlikely because of the huge amount of work it will take) - changing seasons with time in game without having to rebuild and re-upload the world in question. If that ever got done, it would really be something else....

#33
NWN_baba yaga

NWN_baba yaga
  • Members
  • 1 232 messages
Virusman: So it IS possible to change tileset textures? and if yes how are these options handled? THanks again for your great work:)

#34
virusman

virusman
  • Members
  • 282 messages
No, it is not possble for a CC maker or scripter right now. There's just a low-level engine function.

#35
henesua

henesua
  • Members
  • 3 863 messages

KlatchainCoffee wrote...

Another idea, wich would be amazing if it's ever implemented (which is unlikely because of the huge amount of work it will take) - changing seasons with time in game without having to rebuild and re-upload the world in question. If that ever got done, it would really be something else....


This could be approximated without any changes to the engine if the builder creates the seasonal variations for each area ahead of time. Then via script you could decide which of the variations loads upon transition into it. Likewise when the season changes in an area populated by PCs and/or NPCs, jump all characters to the alternate area.

#36
virusman

virusman
  • Members
  • 282 messages
There is something related to texture replacement on tiles, referencing replacetexture.2da. But I guess it was never used, so I'm not sure if it works.
  • OldTimeRadio aime ceci

#37
Carcerian

Carcerian
  • Members
  • 1 108 messages
An especially evil application of dynamic texture use....

"Ladies and Gentlemen, I give you Henry Winkler, covered in bees!!!"

Posted Image

(Sorry Henry...)

As an attack, trap or spell effect, etc, a player is covered in insects (wasps, bees, fire ants...) possibly with a matching VFX. (Creeping Doom upgrade anyone?)

Other possible applications, green slime, acid, boiling oil, tar and feathering, wrapped in chains, 1000 cuts (what happens when you annoy Loviatar in Planescape, or try to walk thru a blade barrier), crystalbrittle, melting flesh, burnt to a crisp...

An animated texture of blinking eyes and gnashing mouths would make for some awesome varieties of Beholderkin/Far Realm Dwellers/Spawn of the Great Old Ones/Elder Race Servitors as well (shoggoths, gibbering mouthers, spawn of Shub-Nigurrath and the like...)

Also now possible, things that look normal one moment and monsterous the next (vampires, wolfen, etc)

Modifié par Carcerian, 18 juin 2012 - 11:57 .


#38
Carcerian

Carcerian
  • Members
  • 1 108 messages
(Semi-related question) Speaking of env-maps, what are the tileset env-maps files used for?

For example:

tno01__env0, tno01__env1, tno01__env2, tno01__env3, tno01__env5 (.tga/dss)

Posted Image

tno01__env4 (.tga/.dss)

Posted Image

tno01__env.txi

cube 1
filerange 6


Modifié par Carcerian, 18 juin 2012 - 11:49 .


#39
OldTimeRadio

OldTimeRadio
  • Members
  • 1 400 messages

Carcerian wrote...

(Semi-related question) Speaking of env-maps, what are the tileset env-maps files used for?

Those would be cubemaps and cubemaps can be used like ordinary environment maps, except they have 6 different maps which form and invisible box around every object which uses them.  When you look down on an object, you'll see one map.  When you look from a certain side (like the west side, say) you'll see another map.  And so on.  If you map a cube map onto a sphere you can make out where the maps join, but, IIRC, it's done slightly nicer than that.

Mostly, they play a big role in shinywater.  Can't have shinywater without a cube map although...it's only a sadly superficial ingredient in the shinywater formula.  The reason why people playing NWN on some ATI cards can't display shiny water properly is because of how cubemaps are improperly displayed.

NWN can use (at least) two types of cube maps.  One type (and these types are really how the game loads them, now how they operate, AFAIK) is a long vertical line of six images in one file.  That type will work in NWN, but it's not used in NWN  It is used in KotoR and probably other iterations of the Aurora engine.  The other type is the one we're familiar with and that's six individual images with a txi which tells NWN to load the parts of the cube from different images instead of cutting the sides from one lone one.

I have notes on this in much more detail...someplace.  If you look at the range of files you'll notice there's one image that's brighter than the rest and one darker than the rest.  Those are the faces of the cube that shine "down" onto a cubemapped object and "up" onto the underside of it.  The other four are usually exactly the same and are the "sides" of what's supposed to be around the object.

Edit:I just realized that description probably doesn't convey as much as pictures might.  Make note of the 4 on top and the numbers on either side.  As I swing down for closeups on the spheres, note the same number is also on the cube, between them.  It's worth noting that how an envmap is displayed is also affected by smoothing groups on the object.  Some example shots in the third paragraph here illustrate the effect.- although those shots are from a regular envmap and not a cubemap.

Posted Image

Modifié par OldTimeRadio, 19 juin 2012 - 06:23 .


#40
Rubies

Rubies
  • Members
  • 292 messages
As a note, the Cube 1 txi property instantly closes my game without an error message - ATI doesn't respond well to it. Just thought I'd mention that before this gets inevitably explored. :P

#41
WebShaman

WebShaman
  • Members
  • 913 messages
Great stuff Virusman! Thanks for this! Keep up the great work!

You all know he has been contributing to NWN from the getgo, right?

#42
Failed.Bard

Failed.Bard
  • Members
  • 774 messages
Would it be possible to apply VFX derived animations directly to a character object through nwnwx/nwncx using this?
With texture and environment map swapping being possible, I'm a bit hopeful that there might finally be a way around the woefully small custom animation limit in NWN.

#43
Rolo Kipp

Rolo Kipp
  • Members
  • 2 791 messages
<perks up his...>

Hmmmm, changing texture maps on a hair VFX? Then we have 1 model for hair-style and a texture change for coloring... The smaller the elements are broken down, the more flexible the customization.

A very worthwhile idea to investigate, IMO, FB =)

<...coffee>

#44
Failed.Bard

Failed.Bard
  • Members
  • 774 messages
I was playing around with the environment maps, and it seems trying to apply one to a dynamic race gives me a hard crash. Not sure why exactly, I had thought all models supported envmaps but I guess not.

#45
OldTimeRadio

OldTimeRadio
  • Members
  • 1 400 messages

Failed.Bard wrote...
I was playing around with the environment maps, and it seems trying to apply one to a dynamic race gives me a hard crash. Not sure why exactly, I had thought all models supported envmaps but I guess not.

Haven't tried it myself so I can't speak directly to that.  Those models do support envmaps and they come with one on them by default.  I can't recall off the top of my head which envmap the regular default races use but your problem could be caused by switching types.  So if the envmap is set up in the scene graph in one way (say, a cube map) and you attempt to slip in a "regular" (single image) envmap, the scene graph could choke.

Just a guess.

Modifié par OldTimeRadio, 04 juillet 2012 - 04:13 .


#46
Carcerian

Carcerian
  • Members
  • 1 108 messages
How possible would dynamic "skinning" be?

Something like Quake2 PCs, were you have a basic body shape models with multiple textures per model?

For example, a female mdl with a simple skirt skirt, could have multiple skins for anything from Warrior Princess, to Magic School Uniform, Maid Outfit, Waitress, Policewoman, 60's mod-squad, Goth Lolita, 20's Flapper, etc. With a few VFX-cceries a simple model can quickly become "unique"...

A basic armor shape could have skins for paladin, cot, blackguard, purple dragon knight, fiendish armor, SWAT, Army...

A basic suit coat could be a gentleman, fop, composer, MIB, scientist, doctor, business man, 70's disco leisure suit, etc...

Modifié par Carcerian, 04 juillet 2012 - 06:36 .


#47
Rolo Kipp

Rolo Kipp
  • Members
  • 2 791 messages
<tossing his chips...>

Problem there is, unless/until Vm can give us a function to target the texture on a sub-object (or change texture in a find/replace function by name) that the texture replacement ala barkskin, et al alters the entire model object to point to a single new (temporary) texture.

If the model was built from scratch to use parts of a single texture atlas for all of the sub-objects, then a single all-model texture swap would be fine. But you'd have to have all the textures in a texture atlas. And it'd have to be a PLT, for dynamic models.

Any idea what the limit is on PLT size? 2048x2048?

<...all in>

Modifié par Rolo Kipp, 04 juillet 2012 - 06:48 .


#48
Carcerian

Carcerian
  • Members
  • 1 108 messages
Yes, assuming you could go the bark/stoneskin route, you would have a basic model, and a "nude/undies/meshmap" builder skin, and end example(s). Then a builder could use the base (recolor as needed) and "paperdoll" anything on top of skin so to speak.

#49
Failed.Bard

Failed.Bard
  • Members
  • 774 messages
 I've got an interesting question, which all the HaVFX being made this month got me thinking of.

  Is there a way to get an object created through a VFX?

  If that can be managed (through nwnx if it's even possible), then it should be possible make colour templates for the HaVFX instead of needing a variant for each gender and race for each colour made.

  I suppose it's a similar question to if an individual part of a model can be targetted.  That could be useful for both dynamic and normal, but multi-textured creatures.

#50
virusman

virusman
  • Members
  • 282 messages
Any of the above changes would *require* client and server to run NWNCX and NWNX. There is just no way to use these features without modifying client and server code and the network protocol.