Duke4.net Forums: PolymerNG - Xbox One and Windows 10 - Duke4.net Forums

Jump to content

  • 41 Pages +
  • « First
  • 28
  • 29
  • 30
  • 31
  • 32
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic

PolymerNG - Xbox One and Windows 10

#871

View PostHiPolyBash, on 28 June 2016 - 05:11 AM, said:

You are an incredibly innovative thinker and a man that possesses wonderful intellectual ability. :P

I have no problems shipping the texture payload tool with the one level demo. It will just take about 10mins to execute(I'll speed this up in the future, by multi-threading it, and adding image update deltas).

Also is there any reason why we have 2,531 non power of two textures?

http://pastebin.com/RgYeWr9q
1

User is offline   HiPolyBash 

#872

View Posticecoldduke, on 28 June 2016 - 06:02 AM, said:

I have no problems shipping the texture payload tool with the one level demo. It will just take about 10mins to execute(I'll speed this up in the future, by multi-threading it, and adding image update deltas).

Two different releases, one with the payload and one without is the ideal thing to do. Everyone loves options!

You're doing awesome work here man. I can't believe how awesome some of the stuff you've been showing off is.
1

User is offline   Steveeeie 

#873

View Posticecoldduke, on 28 June 2016 - 06:02 AM, said:


Also is there any reason why we have 2,531 non power of two textures?



Because .. Noobs.
0

#874

View PostSteveeeie, on 28 June 2016 - 07:55 AM, said:

Because .. Noobs.

Can we get someone to go in and fix those textures?
0

User is offline   Kyanos 

#875

The original game has non pow2 textures, it is handled differently by polymost and polymer. Since the data expects tiles of a certain size any hrp entries are relative to original picture sizes, usually 4X I believe.
0

#876

View PostDrek, on 28 June 2016 - 08:42 AM, said:

The original game has non pow2 textures, it is handled differently by polymost and polymer. Since the data expects tiles of a certain size any hrp entries are relative to original picture sizes, usually 4X I believe.

There are different scaling options in def files, you don't need to keep the original aspect ratio. The UI can probably remain as is, but textures that are in the world need to be switched over to power of 2, so I can carve up the textures into 128x128 regions when I implement virtual texturing.

This post has been edited by icecoldduke: 28 June 2016 - 08:56 AM

0

User is offline   Kyanos 

#877

Sounds like a lot of blue collar work. 2.5 thousand textures, even ignoring fonts hud and menu, 500 pictures.
0

#878

View PostDrek, on 28 June 2016 - 08:55 AM, said:

Sounds like a lot of blue collar work. 2.5 thousand textures, even ignoring fonts hud and menu, 500 pictures.

You made me spit up coffee on my monitor :P. I would need those 500 textures fixed though.
1

User is offline   Hendricks266 

  • Weaponized Autism

  #879

View Posticecoldduke, on 28 June 2016 - 06:02 AM, said:

Also is there any reason why we have 2,531 non power of two textures?

Because the original art was also NPOT and accuracy is mission critical.

View Posticecoldduke, on 28 June 2016 - 08:48 AM, said:

There are different scaling options in def files, you don't need to keep the original aspect ratio. The UI can probably remain as is, but textures that are in the world need to be switched over to power of 2, so I can carve up the textures into 128x128 regions when I implement virtual texturing.

Hailing Captain Picard. "Stretch the fuck out of 2,500 HRP assets" is not the answer.

We already have code to deal with this in cases where the graphics hardware does not support NPOT textures. In your case, round up to the nearest 128 and fill the empty space a la GL_CLAMP_TO_EDGE. Then scale that off the edge when applying the texture.

How are you planning to handle the 8-bit ART that's NPOT?
0

#880

View PostHendricks266, on 28 June 2016 - 09:32 AM, said:

...

This issue with NPOT textures is with virtual texturing. The technique I'm going to use is I'm going to carve up each texture into 128x128 regions I'm calling payloads. In the case of NPOT I can pad the remaining scanlines with 0,0,0. The problem with that is with textures that are supposed to repeat, and NPOT the math won't work exactly right, and you will end up with small black outlines at the point the textures are supposed to repeat. Classic art won't support virtual texturing, only the HRP will. Virtual texturing is designed to optimize out the draw call overhead. I plan on having a index buffer I update every frame, a property texture I upload every frame, and with virtual texturing I have turned the 1000+ draw calls into 2(one for figuring out what payloads are visible/mapped were, and one for the actual albedo) plus a few buffer uploads.

This post has been edited by icecoldduke: 28 June 2016 - 10:30 AM

0

User is offline   MusicallyInspired 

  • The Sarien Encounter

#881

Carve? As in crop?
0

#882

View PostMusicallyInspired, on 28 June 2016 - 09:54 AM, said:

Carve? As in crop?

No. If the texture is 256x256 for example I take each 128x128 regions and save it off into a payload. So a 256x256 image would have 4 128x128 payloads.
0

User is offline   Mblackwell 

  • Evil Overlord

#883

The game takes whatever texture dimensions and then normalizes it to an internal scaling factor (xrepeat and yrepeat) and the game expects it to work naively. Changing texture dimensions in any way from their originals will break most maps.
0

#884

View PostMblackwell, on 28 June 2016 - 11:54 AM, said:

The game takes whatever texture dimensions and then normalizes it to an internal scaling factor (xrepeat and yrepeat) and the game expects it to work naively. Changing texture dimensions in any way from their originals will break most maps.

We'll then we need a solution to the problem. Any ideas? I can't use NPOT. It seems like since we are doing a NG version of the game, if we have world textures of good quality but aren't the same proportion to the original then does it actually matter? The question is do we have the bandwidth to do it?

This post has been edited by icecoldduke: 28 June 2016 - 12:22 PM

0

User is offline   Striker 

  • Auramancer

#885

View PostSteveeeie, on 26 June 2016 - 03:10 PM, said:

You are failing to see how they work.

Normal maps should never be transparent, its just not how they work. The only channels that really matter are the red and green channels.

The HRP normals only appear to be transparent if viewed in photoshop or explorer because content creators are storing parallax maps in the alpha slot.


I've known plenty of game engines (Source immediately comes to mind) that use transparency in their normal maps for specular mapping and/or environment map masking.
1

User is offline   Mblackwell 

  • Evil Overlord

#886

View Posticecoldduke, on 28 June 2016 - 12:16 PM, said:

We'll then we need a solution to the problem. Any ideas? I can't use NPOT. It seems like since we are doing a NG version of the game, if we have world textures of good quality but aren't the same proportion to the original then does it actually matter? The question is do we have the bandwidth to do it?


It will matter yes, since it will be completely wrong in scaling/repetitions/alignment. The only textures that follow are ^2 are the floor and ceiling tiles as they were rendered cheaply in the original game and would have a completely garbled appearance in old engine versions if they were not. This isn't an issue in EDuke32 however.

The solution is to load it as a pow2 texture and clamp it.
0

#887

View PostMblackwell, on 28 June 2016 - 07:44 PM, said:

It will matter yes, since it will be completely wrong in scaling/repetitions/alignment. The only textures that follow are ^2 are the floor and ceiling tiles as they were rendered cheaply in the original game and would have a completely garbled appearance in old engine versions if they were not. This isn't an issue in EDuke32 however.

The solution is to load it as a pow2 texture and clamp it.

That doesn't work that well with Virtual Texturing for the reasons I mentioned above. I'm going to force all textures to be POT right now, and we can address this after I get everything working. It seems like I can fix it with math after the POT conversion but I don't want to deal with this until after I get Virtual Texturing is working.

This post has been edited by icecoldduke: 28 June 2016 - 07:55 PM

2

User is offline   Steveeeie 

#888

View PostStrikerMan780, on 28 June 2016 - 06:10 PM, said:

I've known plenty of game engines (Source immediately comes to mind) that use transparency in their normal maps for specular mapping and/or environment map masking.


Yes, I'm not saying you can't utilise the alpha for other maps but it doesn't make it a "transparent" normal map, it makes it a normal map with a specular or parallax map embedded in its alpha channel. The reason this is ok is because of what I have been trying to say, that the engine should only interpret the RGB(B is actually useless and could be utilised too). ICD has already stated this is how the new renderer works, so I'm not sure why there is still an ongoing debate.
3

User is offline   Steveeeie 

#889

View Posticecoldduke, on 28 June 2016 - 07:49 PM, said:

That doesn't work that well with Virtual Texturing for the reasons I mentioned above. I'm going to force all textures to be POT right now, and we can address this after I get everything working. It seems like I can fix it with math after the POT conversion but I don't want to deal with this until after I get Virtual Texturing is working.


i know you can put non-POT textured into unreal4, but its not recommended and has a big old cry about it if you try. Probably not useful info, but thought I would share experience from another modern engine.
2

#890

So some fixes went into the private PolymerNG branch today. I fixed about 60% of the geo flicker that was happening(and sped that code up by a decent amount, I removed some nasty std::vector code). I removed the 32bit position buffer and replaced it with depth reconstruction logic. I also ensured pixels that would never be effected by a light would not execute lighting logic. With those changes I went from 18-20ms(around 13fps) to 114fps in the worst areas and over 150-200fps in lighter areas.

These shots are with bumpmap and spec.
Posted Image

Posted Image

I must have broke the property part of the G-Buffer which is why sprites aren't rendering right.

How many lights can Polymer handle? This is rendering about 13-15.

This post has been edited by icecoldduke: 29 June 2016 - 04:29 PM

7

User is offline   Mark 

#891

About the pixels that will never see a light... Maybe no point or spot light, but what about light from a projectile as is passes? Or a pipebomb explosion?

This post has been edited by Mark.: 29 June 2016 - 04:31 PM

0

#892

View PostMark., on 29 June 2016 - 04:31 PM, said:

About the pixels that will never see a light... Maybe no point or spot light, but what about light from a projectile as is passes? Or a pipebomb explosion?

In both of your scenarios the engine would make lights for both the explosion and the lit particle. Then if you wanted those particles would also be effect by world lights, but in the case of explosions that sprite would only be effected by the light from the explosion. I haven't done that part yet but thats how it will work. The goal is we don't want lights to render into pixel they don't effect.
0

User is offline   Mark 

#893

And to answer your second question. My map Ancient Rome has about 25 point lights and 1 spotlight visible from a few places in the large outdoor area.
0

#894

View PostMark., on 29 June 2016 - 04:43 PM, said:

And to answer your second question. My map Ancient Rome has about 25 point lights and 1 spotlight visible from a few places in the large outdoor area.

Whats your framerate?
0

User is offline   Mark 

#895

Its about 18FPS on my old machine here. But even without the lights, the hundreds of custom models and sprites in a large open city area really dragged it down. And that was with no enemies either. The project was never finished. I took a quick Mapster look at map 3 of my Graveyard mod and that has about 30 or more lights visible at once including many flame sprites.

This post has been edited by Mark.: 29 June 2016 - 05:12 PM

0

User is offline   Steveeeie 

#896

View Posticecoldduke, on 29 June 2016 - 04:13 PM, said:

So some fixes went into the private PolymerNG branch today. I fixed about 60% of the geo flicker that was happening(and sped that code up by a decent amount, I removed some nasty std::vector code). I removed the 32bit position buffer and replaced it with depth reconstruction logic. I also ensured pixels that would never be effected by a light would not execute lighting logic. With those changes I went from 18-20ms(around 13fps) to 114fps in the worst areas and over 150-200fps in lighter areas.

These shots are with bumpmap and spec.
Posted Image

Posted Image

I must have broke the property part of the G-Buffer which is why sprites aren't rendering right.

How many lights can Polymer handle? This is rendering about 13-15.


Can't wait for this to have fbx and for the materials to be finalised, I will make some stuff.
0

User is offline   HiPolyBash 

#897

View PostSteveeeie, on 29 June 2016 - 11:44 PM, said:

Can't wait for this to have fbx and for the materials to be finalised, I will make some stuff.

Are you working with the guys working on E1L1 for PolymerNG?
0

User is offline   Tea Monster 

  • Polymancer

#898

Nope.
1

#899

View PostHiPolyBash, on 29 June 2016 - 11:55 PM, said:

Are you working with the guys working on E1L1 for PolymerNG?

The E1L1 modifications you see are done by me to show off various NG effects I add to PolymerNG. This map is a zoo of PolymerNG features. These changes will come in the form of maphack and released as the one level demo I keep talking about.

This post has been edited by icecoldduke: 30 June 2016 - 01:25 AM

0

User is offline   Steveeeie 

#900

View PostHiPolyBash, on 29 June 2016 - 11:55 PM, said:

Are you working with the guys working on E1L1 for PolymerNG?


No, I don't want to commit to working with a team, I have far too many other commitments to be reliable.

But once its easier to add stuff I will be looking to put some things together for myself and will see how it goes from there.
1

Share this topic:


  • 41 Pages +
  • « First
  • 28
  • 29
  • 30
  • 31
  • 32
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic


All copyrights and trademarks not owned by Voidpoint, LLC are the sole property of their respective owners. Play Ion Fury! ;) © Voidpoint, LLC

Enter your sign in name and password


Sign in options