logo
Main

Forums

Downloads

Unreal-Netiquette

Donate for Oldunreal:
Donate

borderline

Links to our wiki:
Wiki

Walkthrough

Links

Tutorials

Unreal Reference

Usermaps

borderline

Contact us:
Submit News
Page Index Toggle Pages: 1 ... 10 11 [12] 13  Send TopicPrint
Very Hot Topic (More than 25 Replies) Enhanced Monster Skins (Read 35633 times)
Lightning_Hunter
Senior Member
****
Offline



Posts: 267
Location: somewhere on Earth
Joined: Mar 4th, 2003
Gender: Male
Re: Enhanced Monster Skins
Reply #165 - May 12th, 2016 at 4:54am
Print Post  
[]KAOS[]Casey wrote on May 11th, 2016 at 7:25pm:
Your download may be corrupted.


I wonder?  sn260591, can you test and verify a working version of this mutator and upload it to a different site?
  

For High-Res Unreal skins, click here.
Back to top
IP Logged
 
sn260591
Full Member
***
Offline



Posts: 111
Location: Russia
Joined: Aug 17th, 2011
Gender: Male
Re: Enhanced Monster Skins
Reply #166 - May 12th, 2016 at 2:11pm
Print Post  
Lightning_Hunter wrote on May 12th, 2016 at 4:54am:
[]KAOS[]Casey wrote on May 11th, 2016 at 7:25pm:
Your download may be corrupted.


I wonder?  sn260591, can you test and verify a working version of this mutator and upload it to a different site?

First check HDSkins.u SHA1 here http://emn178.github.io/online-tools/sha1_checksum.html, its should be 2160f2808aedb161c146b969a7e4efefe56846f4.
  

Sorry for my bad English
Back to top
 
IP Logged
 
Lightning_Hunter
Senior Member
****
Offline



Posts: 267
Location: somewhere on Earth
Joined: Mar 4th, 2003
Gender: Male
Re: Enhanced Monster Skins
Reply #167 - May 13th, 2016 at 1:21am
Print Post  
I got the mutator running today, but I'm not entirely sure what fixed it.  Yesterday I noticed that the DRAM frequency of my computer memory was at 667mhz, when it is supposed to be 800mhz (4gbX2 DDR3 RAM sticks at 1600mhz total).  I changed my bios to fix this, and today I noticed the mutator is suddenly working.  I don't get why this would fix the issue, since underclocking the memory by such a minuscule amount should not make much of a difference. Heck, the RAM I'm using is 10x faster than what people used in the early days of Unreal, even when underclocked...  Anyway, now I can finally test some skins with masked textures! 

I also ordered another 8gb of RAM, for a total of 16gb.  I noticed that photoshop was sucking up 90% of the physical memory available with skins that are 4096x4096, and as a result, the slowdowns are almost unbearable.  Hopefully I can work faster once I get the new memory installed.

Edit:  Need some help.  I'm trying to replace the Warlord skin, so I added the following code:

Code
Select All
	Data[0].Mesh = "UnrealI.WarlordM";
	Data[0].TexNum = 1;
	//Warlord
	Data[0].Tex[0].Old[0] = "None";
	Data[0].Tex[0].New[0] = "HDSkins2.HDJWarlord1";
 



It doesn't work.  What am I missing?  The Warlord skin is in HDskins2.utx, and is named "HDJWarlord1".

Edit #2:  I figured it out by changing "Data[0].Tex[0].New[0]" to "      Data[0].Tex[0].New[1]".  I guess that is the multi-skin number.

Edit #3:  Well, I finally got the skin working in the game, but it STILL isn't masked.  I converted the 24-bit BMP file to DXT1 using paint.net, and imported the texture using UnrealED 2.1.  I tried checking masked and AlphaBlend while importing, but nothing works...  The edges of the Warlord wings appear black.  I'm at a loss.
« Last Edit: May 13th, 2016 at 3:54am by Lightning_Hunter »  

For High-Res Unreal skins, click here.
Back to top
IP Logged
 
Skywolf
Betatester
Offline


Just placeholding...

Posts: 828
Joined: Aug 2nd, 2009
Re: Enhanced Monster Skins
Reply #168 - May 13th, 2016 at 12:57pm
Print Post  
For AlphaBlend to work a texture needs an alpha channel first. And I doubt paint.net is able to do this for you as it has no idea what parts have to be transparent. For masked the first indexed color is the color used to know what has to be masked. Not sure what Paint.net uses for this color.

But if you need help with this you can sent me the textures and I can make a proper alpha channel for it.

As for your RAM. Maybe it is defect. Try running something like memtest86 for a few hours to see if there might be something wrong there.
  

I hate it when people ask me what my favorite game is. Just try to explain you're not talking about Unreal Tournament Roll Eyes.
Back to top
 
IP Logged
 
sn260591
Full Member
***
Offline



Posts: 111
Location: Russia
Joined: Aug 17th, 2011
Gender: Male
Re: Enhanced Monster Skins
Reply #169 - May 13th, 2016 at 2:36pm
Print Post  
Quote:
I figured it out by changing "Data[0].Tex[0].New[0]" to "      Data[0].Tex[0].New[1]".  I guess that is the multi-skin number.

Yes, for some meshes (warlord, pupae ...) the texture can be replaced only thus.

Quote:
Well, I finally got the skin working in the game, but it STILL isn't masked.  I converted the 24-bit BMP file to DXT1 using paint.net, and imported the texture using UnrealED 2.1.  I tried checking masked and AlphaBlend while importing, but nothing works...  The edges of the Warlord wings appear black.  I'm at a loss.

It is necessary to make the respective areas the transparent in paint.net. You can use filling:
  

Sorry for my bad English
Back to top
 
IP Logged
 
Lightning_Hunter
Senior Member
****
Offline



Posts: 267
Location: somewhere on Earth
Joined: Mar 4th, 2003
Gender: Male
Re: Enhanced Monster Skins
Reply #170 - May 13th, 2016 at 4:49pm
Print Post  
sn260591 wrote on May 13th, 2016 at 2:36pm:
Quote:
I figured it out by changing "Data[0].Tex[0].New[0]" to "      Data[0].Tex[0].New[1]".  I guess that is the multi-skin number.

Yes, for some meshes (warlord, pupae ...) the texture can be replaced only thus.

Quote:
Well, I finally got the skin working in the game, but it STILL isn't masked.  I converted the 24-bit BMP file to DXT1 using paint.net, and imported the texture using UnrealED 2.1.  I tried checking masked and AlphaBlend while importing, but nothing works...  The edges of the Warlord wings appear black.  I'm at a loss.

It is necessary to make the respective areas the transparent in paint.net. You can use filling:
http://i.imgur.com/6bfpoDT.png


Is it possible to have paint.net convert a certain color to transparent?  All the images are in .psd (photoshop) format which stores all the layer information, and I would rather modify the original image file.  Otherwise, I would have to add an alpha layer every time I modify the original skin.

Quote:
As for your RAM. Maybe it is defect. Try running something like memtest86 for a few hours to see if there might be something wrong there.


I've had this RAM in the computer since I built it 3 years ago, but it's possible it is slowly becoming bad.  I'll run some tests.

  

For High-Res Unreal skins, click here.
Back to top
IP Logged
 
sn260591
Full Member
***
Offline



Posts: 111
Location: Russia
Joined: Aug 17th, 2011
Gender: Male
Re: Enhanced Monster Skins
Reply #171 - May 13th, 2016 at 5:19pm
Print Post  
Lightning_Hunter wrote on May 13th, 2016 at 4:49pm:
Is it possible to have paint.net convert a certain color to transparent?  All the images are in .psd (photoshop) format which stores all the layer information, and I would rather modify the original image file.  Otherwise, I would have to add an alpha layer every time I modify the original skin.

It is possible to add an alpha by means of a photoshop if it is so more convenient for you.
  

Sorry for my bad English
Back to top
 
IP Logged
 
Lightning_Hunter
Senior Member
****
Offline



Posts: 267
Location: somewhere on Earth
Joined: Mar 4th, 2003
Gender: Male
Re: Enhanced Monster Skins
Reply #172 - May 13th, 2016 at 5:54pm
Print Post  
Aha, I found a way to make Photoshop save files as .DDS (just had to download the Nvidia extension for photoshop).  I added an alpha layer in the original file, and bingo - everything works!  Finally, I have masked textures.   Cool

Edit:  Should I generate mipmaps when importing these textures?
  

For High-Res Unreal skins, click here.
Back to top
IP Logged
 
sn260591
Full Member
***
Offline



Posts: 111
Location: Russia
Joined: Aug 17th, 2011
Gender: Male
Re: Enhanced Monster Skins
Reply #173 - May 13th, 2016 at 6:33pm
Print Post  
Lightning_Hunter wrote on May 13th, 2016 at 5:54pm:
Should I generate mipmaps when importing these textures?

I think that it is better to generate mipmaps during saving a texture.
  

Sorry for my bad English
Back to top
 
IP Logged
 
Lightning_Hunter
Senior Member
****
Offline



Posts: 267
Location: somewhere on Earth
Joined: Mar 4th, 2003
Gender: Male
Re: Enhanced Monster Skins
Reply #174 - May 13th, 2016 at 9:29pm
Print Post  
sn260591 wrote on May 13th, 2016 at 6:33pm:
Lightning_Hunter wrote on May 13th, 2016 at 5:54pm:
Should I generate mipmaps when importing these textures?

I think that it is better to generate mipmaps during saving a texture.


Good idea.  I'll have Photoshop do it when I save the file as DXT1.
  

For High-Res Unreal skins, click here.
Back to top
IP Logged
 
Dr.Flay™
Senior Member
****
Online


ChaosUT-333networks

Posts: 374
Location: Kernow, UK
Joined: Dec 9th, 2012
Gender: Male
Re: Enhanced Monster Skins
Reply #175 - May 14th, 2016 at 2:22am
Print Post  
http://www.oldunreal.com/wiki/index.php?title=ARB-texture-compression_doc

DXT1 does not support alpha channels, only a mask colour.
DXT3 is used for alpha channels with a sharp edge
DXT5 is used for alpha channels with a blended edge.

My post explains the difference with examples
https://www.ut99.org/viewtopic.php?f=5&t=5956
It also has resources for Photoshop and Gimp.
  
Back to top
IP Logged
 
Lightning_Hunter
Senior Member
****
Offline



Posts: 267
Location: somewhere on Earth
Joined: Mar 4th, 2003
Gender: Male
Re: Enhanced Monster Skins
Reply #176 - May 14th, 2016 at 2:48am
Print Post  
Dr.Flay™ wrote on May 14th, 2016 at 2:22am:
DXT1 does not support alpha channels, only a mask colour.


I am not an expert with DXT1 or anything, so I could be totally wrong here - but isn't there DXT1 with and without support for 1 Alpha Channel?  I created an alpha channel in photoshop with the Warlord skin, and photoshop gave me the option to export as DXT1 with 1 alpha channel.  When I imported this file in UnrealEd 2.1 and saved it as UTX to run in UT99, the Warlord appeared masked just fine.  Maybe I am wrong about the details of why this is, but the point is that it seems to be working fine.  I tried using a color for a masked texture (white, black, etc.), but it did not work.  Only an alpha channel with DXT1 worked!
  

For High-Res Unreal skins, click here.
Back to top
IP Logged
 
Lightning_Hunter
Senior Member
****
Offline



Posts: 267
Location: somewhere on Earth
Joined: Mar 4th, 2003
Gender: Male
Re: Enhanced Monster Skins
Reply #177 - May 14th, 2016 at 5:41am
Print Post  
Well, I have completed all the Unreal scripted pawn skins.  The final skin to complete was the Queen, and I just finished it (and I sure am glad that skin is over with).  The Queen skin is one of the most intricate skins in the game, and also my least favorite in Unreal.  However, I think the skin turned out nicely.  I am not going to bother posting screenshots this time around.  People can have something to look forward to when they finish Unreal.  Tongue   

The next step is to convert all the skins to DXT1 format, get all the masked textures working properly, and add them to the mutator.  I will also likely add some other object textures to the pack as well before doing the final upload.  If anyone wants to create high-res skins for the weapons, now is the time...  It would be a shame to release a pack without high-res skins of the items you stare at the most!
  

For High-Res Unreal skins, click here.
Back to top
IP Logged
 
sn260591
Full Member
***
Offline



Posts: 111
Location: Russia
Joined: Aug 17th, 2011
Gender: Male
Re: Enhanced Monster Skins
Reply #178 - May 14th, 2016 at 9:16am
Print Post  
Lightning_Hunter wrote on May 14th, 2016 at 5:41am:
If anyone wants to create high-res skins for the weapons, now is the time...  It would be a shame to release a pack without high-res skins of the items you stare at the most!

If remaining textures will redrawn, then it is necessary to divide actors into groups to avoid problems with performance:
Code (C++)
Select All
struct STex
{
	var string	Old[8];
	var string	New[8];
};

struct SData
{
	var string	Mesh;
	var string	MeshNew;
	var bool	bMultiSkins;
	var int	TexNum;
	var STex	Tex[6];
};

var struct SGroup
{
	var int DataNum;
	var SData Data[32];
} Group[3];

function bool CheckReplacement(Actor Other, out byte bSuperRelevant)
{
	local int g, i, j, m;
	local bool bDone;

	if (Other.Mesh == None)
		return true;

	if (Other.IsA('ScriptedPawn') || Other.IsA('Carcass'))
		g = 0;
	else if (Other.IsA('Decoration'))
		g = 1;
	else if (Other.IsA('Weapon'))
		g = 2;
	else
		return true;

	for (i = 0; i < Group[g].DataNum; i++)
	{
		if (string(Other.Mesh) ~= Group[g].Data[i].Mesh)
		{
			if (Group[g].Data[i].MeshNew != "")
				Other.Mesh = mesh(DynamicLoadObject(Group[g].Data[i].MeshNew, Class'Mesh'));

			for (j = 0; j < Group[g].Data[i].TexNum; j++)
			{
				if (!(Group[g].Data[i].bMultiSkins))
				{
					if (string(Other.Skin) ~= Group[g].Data[i].Tex[j].Old[0])
					{
						Other.Skin = texture(DynamicLoadObject(Group[g].Data[i].Tex[j].New[0], Class'Texture'));
						return true;
					}
				}
				else
				{
					for (m = 0; m < 8; m++)
					{
						if (Group[g].Data[i].Tex[j].New[m] != "")
						{
							if (string(Other.MultiSkins[m]) ~= Group[g].Data[i].Tex[j].Old[m])
							{
								Other.MultiSkins[m] = texture(DynamicLoadObject(Group[g].Data[i].Tex[j].New[m], Class'Texture'));
								bDone = True;
							}
						}
					}

					if (bDone)
						return true;
				}
			}
		}
	}

	return true;
}

function PreBeginPlay()
{
//ScriptedPawn and Carcass
	Group[0].DataNum = 2;

	Group[0].Data[0].Mesh = "UnrealShare.Skaarjw";
	Group[0].Data[0].TexNum = 2;
	//SkaarjWarrior
	Group[0].Data[0].Tex[0].Old[0] = "None";
	Group[0].Data[0].Tex[0].New[0] = "Ancient.Base.GRENMRBL";
	//IceSkaarj
	Group[0].Data[0].Tex[1].Old[0] = "UnrealI.Skins.Skaarjw3";
	Group[0].Data[0].Tex[1].New[0] = "Ancient.Base.A_bs4";

	Group[0].Data[1].Mesh = "UnrealI.Pupae1";
	Group[0].Data[1].bMultiSkins = True;
	Group[0].Data[1].TexNum = 1;
	//Pupae
	Group[0].Data[1].Tex[0].Old[1] = "None";
	Group[0].Data[1].Tex[0].New[1] = "Ancient.Base.Crunchyd";

//Decoration
	Group[1].DataNum = 1;

	Group[1].Data[0].Mesh = "UnrealI.Flag1M";
	Group[1].Data[0].TexNum = 1;
	//Flag1
	Group[1].Data[0].Tex[0].Old[0] = "None";
	Group[1].Data[0].Tex[0].New[0] = "Ancient.Base.WALLA";

//Weapon
	Group[2].DataNum = 3;

	//ASMD
	Group[2].Data[0].Mesh = "UnrealShare.ASMDPick";
	Group[2].Data[0].bMultiSkins = True;
	Group[2].Data[0].TexNum = 1;
	Group[2].Data[0].Tex[0].Old[1] = "None";
	Group[2].Data[0].Tex[0].New[1] = "Ancient.Door.dth_dr";

	Group[2].Data[1].Mesh = "UnrealShare.ASMD3";
	Group[2].Data[1].bMultiSkins = True;
	Group[2].Data[1].TexNum = 1;
	Group[2].Data[1].Tex[0].Old[1] = "None";
	Group[2].Data[1].Tex[0].New[1] = "Ancient.Door.dth_dr";

	Group[2].Data[2].Mesh = "UnrealShare.ASMDM";
	Group[2].Data[2].bMultiSkins = True;
	Group[2].Data[2].TexNum = 1;
	Group[2].Data[2].Tex[0].Old[1] = "None";
	Group[2].Data[2].Tex[0].New[1] = "Ancient.Door.dth_dr";
} 

  

Sorry for my bad English
Back to top
 
IP Logged
 
han
Global Moderator
Unreal Rendering Guru
Developer Team
*****
Offline


Oldunreal member

Posts: 571
Location: Germany
Joined: Dec 10th, 2014
Gender: Male
Re: Enhanced Monster Skins
Reply #179 - May 15th, 2016 at 1:53am
Print Post  
sn260591 wrote on May 14th, 2016 at 9:16am:
If remaining textures will redrawn, then it is necessary to divide actors into groups to avoid problems with performance:

How about a (fixed size) hashtable you fill at runtime?
  

HX on Mod DB. Revision on Steam. Löffels on Patreon.
Back to top
 
IP Logged
 
Page Index Toggle Pages: 1 ... 10 11 [12] 13 
Send TopicPrint
Bookmarks: del.icio.us Digg Facebook Google Google+ Linked in reddit StumbleUpon Twitter Yahoo