ManaGunZ

PS3 ManaGunZ - PS3 Backup Manager by Zar v1.41

Yep, I translated the cover a little bit on the left 0.1 to be sure the texture is ON the gamecase. I also I added 0.1 to the thickness. If I don't do this, sometimes the gamecase will be over the cover, we won't be able to see the cover properly.

I didn't expect someone to see this gap, i'll reduce it.
Thanks for taking care about this detail, the disaligment is not much notable when the cover is "on focus" (not problematic), but in the perspective views "out of focus" it have an important impact in the location of the rounding effects in the edges

Lets say... the "rounding" visual effect in the curved edges of the cover full have a size of around 12 pixels (im counting the pixels of the gradient/shadow area that had the normal vector inverted and you are going to "flip")
A displacement of 2 or 3 pixels in that area would be aceptable, just a couple of examples:
-For a range of 12 ---> a displacement of 2 would be like 18%
-For a range of 12 ---> a displacement of 4 would be like 33%
-For a range of 12 ---> a displacement of 6 would be like 50%

I dont know how much displacement we have now, but is notable in the perspective view (im guessing is something around 4 or bigger)... also what you mentioned about the other displacement in Z is cummulating. The disalignments we see in the perspective view "out of focus" is the result of two displacements in X and Z axis
Dunno, im not going to continue searching for problems related with that edges, because it seems after the changes are going to look a lot better :)

Btw, i remember to see some code related with images where it was needed to display several images in the same position, and what they was doing was to "stack" them like this
layer 1 position Z = 0
layer 2 position Z = 0.01
layer 3 position Z = 0.001
layer 4 position Z = 0.0001
Etc...

I dont know how much decimals allows tiny3d... but this trick works nice because this small distances are not really represented in the screen
I mean... are smaller than 1 pixel of the screen, visually 0.01 and 0.00001 is exactly the same... so only matters in the code

And please, do this change too
...have you thought in changing the color for PSP and PS3 to something a bit like... #DFDFDF #EFEFEF... or with a bit of blue... #CFCFDF #DFDFEF
My arguments to suggest this is because the actual white color of PSP and PS3 cases is damaging the light/shadow visual effects
In the same way you avoided to use a pure black for the PS2 case (to preserve the shadows)... you should avoid using white (to preserve the lighting)

Also, by replacing the white color by any other we are not breaking the realism because doesnt exists PS3 cases in white anyway
The colors i suggested are a bit closer to the plastic material used in PS3 and PSP cases... but personally i dont care much about the color (blue would fit and look well, is not official either, but if you prefer to use blue i would like it too), if im talking about this colors is because i want to restore the lighting effects :)
 
Last edited:
It's not just the color on 3D. You have to set the properties of the material (Emissive, ambient, diffuse, specular).

Firstly, you have to know the transparency is very ugly (probably because of the way I build the boxes...).
So, i'm not using it. I tried several predefined materials properties (from 3DS MAX libraries) and none of them is well represented... I don't know if it come from the tiny3D lib or maybe I didn't set the light properly or something else maybe.... I don't know.
So, I just tryed different random values... I'll try to reduce the light on PS3/PSP box (I think it's the same).
 
Not sure what is it, probably is the material, because the light spots of the scene are common, right ?
Look at this image with a huge zoom
b23ZPIp.jpg

The black case looks pretty cool, because it have areas with shadow (more darker), and other areas lighted (more brighter)
Also, the curvature of the vertical edges is represented very well... it looks roundy, and the radius you used in the geometry is realistic

But the white cases looks very different, the shadowed areas are fine but there are not lighted areas, and the vertical edges looks a lot more "sharp" (not rounded) :/
 
Sorry, when talking about images there are many things hard to explain with words, what i meant when i said "we dont have lighted areas" is like this
vNRllqR.jpg

In the black case can be seen how tiny3d is adding some white pixels in the vertical edge (is an area brighter than the base material color)
And the geometry of the vertical edges is the same in the PS2, PS3, PSP cases, right ? (same radius)
So tiny3d is also adding white pixels in the area i marked in blue (but we cant see them)

Pretty much... in the area i marked in blue we have the base color of the material #fffffff + the lighting effects added on top of it using color #ffffff... so the result is #ffffff (nothing)

This is why i said that changing the base material color (to any other color you prefer, different than #ffffff or #000000) is going to help a lot :)
 
Last edited:
And the geometry of the vertical edges is the same in the PS2, PS3, PSP cases, right ? (same radius)
I realized the radius of the edges of the PS3 case are smaller than PS2 and PSP cases
I had to rotate the PS3 case (with right stick) lot of times to see the curvature of it, when the case rotates the light/shadows effects changes dinamically and there is a split second where it can be seen the radius way better
Im tempted to try to caught that instant with an screenshoot :D
Other than that... the best thing i can do by now is to wait for the next mgz version with the changes and adjustments we have been discussing and see how it looks
Is going to look better but i dont know how much
 
I love this game manager, so simple to use. Will the create shortcut with pkg feature make a comeback? I didn't know this existed until a day or so ago and it seems perfect for how i want my setup but found that its not a feature anymore? Thx
 
  • Like
Reactions: Zar
@Zar i been reading some tiny3d documentation and this sample and i think that feature to create "material lists" could come in handy
In the actual mgz code there are several places where are defined some material settings, and is tricky to have a general overview of them because are separated from each others, duplicated, etc...
This is one of the times when is needed to adjust a lot of settings that belongs to a lot of different stuffs... and the best way to do it is by having all the values together in the same place... i think the "material lists" are going to help with this kind of fine adjustments

Also, i found this list of material settings for openGL, includes a nice gallery of images to give us an idea of how is going to look http://www.it.hiof.no/~borres/j3d/explain/light/p-materials.html
And some more http://devernay.free.fr/cours/opengl/materials.html

So i took the freedom to create a list of materials for tiny3d/managunz, this section of code is intended to be inserted next to the section you labeled // *** LIGHT ***
Please review it (and debug me if needed :P), and add it to managunz code incase it works
Code:
// *** MATERIAL ***

void Build_Perl(){
	// Used by CASE PS3 and PSP
    tiny3d_RecordList();
	
	tiny3d_EmissiveMaterial(     0.0f,      0.0f,      0.0f,    0.0f); // r,g,b,unused
	tiny3d_AmbientMaterial(     0.25f,  0.20725f,  0.20725f,  0.922f); // r,g,b,a
	tiny3d_DiffuseMaterial(      1.0f,    0.829f,    0.829f,    1.0f); // r,g,b,enable
	tiny3d_SpecularMaterial(0.296648f, 0.296648f, 0.296648f, 11.264f); // r,g,b,shininess
	
    material_perl = tiny3d_StopList();
    assert(material_perl);
}

void Build_Black_Rubber(){
	// Used by CASE PS2
    tiny3d_RecordList();
	
	tiny3d_EmissiveMaterial(0.0f,  0.0f,  0.0f,  0.0f); // r,g,b,unused
	tiny3d_AmbientMaterial(0.02f, 0.02f, 0.02f,  1.0f); // r,g,b,a
	tiny3d_DiffuseMaterial(0.01f, 0.01f, 0.01f,  1.0f); // r,g,b,enable
	tiny3d_SpecularMaterial(0.4f,  0.4f,  0.4f, 10.0f); // r,g,b,shininess
	
    material_black_rubber = tiny3d_StopList();
    assert(material_black_rubber);
}

void Build_Chrome(){
	// Used by CASE PS1
    tiny3d_RecordList();
	
	tiny3d_EmissiveMaterial(     0.0f,      0.0f,      0.0f,  0.0f); // r,g,b,unused
	tiny3d_AmbientMaterial(     0.25f,     0.25f,     0.25f,  1.0f); // r,g,b,a
	tiny3d_DiffuseMaterial(      0.4f,      0.4f,      0.4f,  1.0f); // r,g,b,enable
	tiny3d_SpecularMaterial(0.774597f, 0.774597f, 0.774597f, 76.8f); // r,g,b,shininess
	
    material_chrome = tiny3d_StopList();
    assert(material_chrome);
}

void Build_Cover(){
	// Used by COVER ALL
    tiny3d_RecordList();
	
	tiny3d_EmissiveMaterial(0.0f, 0.0f, 0.0f, 0.0f); // r,g,b,unused
	tiny3d_AmbientMaterial( 0.1f, 0.1f, 0.1f, 1.0f); // r,g,b,a
	tiny3d_DiffuseMaterial( 0.1f, 0.1f, 0.1f, 1.0f); // r,g,b,enable
	tiny3d_SpecularMaterial(0.2f, 0.2f, 0.2f, 5.0f); // r,g,b,shininess
	
    material_cover = tiny3d_StopList();
    assert(material_cover);
}

Notes (scene lights)
I think it would be beter to change the actual
Code:
tiny3d_SetLight(3,  -500.0f , 500.0f, 0.0f, 0.5f, 0.5f, 0.5f,  LIGHT_SPECULAR);
To
Code:
tiny3d_SetLight(3,  -500.0f , 500.0f, 0.0f, 1.0f, 1.0f, 1.0f,  LIGHT_SPECULAR);
The reason why im suggesting this is because the color of this light is the direct responsible of the color that is going to be emitted by tiny3d_SpecularMaterial();
That setting is for the reflections, with the actual values the light is #808080, and when it "bounces" in the material... well at that point we are losing a bit the control of it
With the values im suggesting the light will be #ffffff and the reflections should be whatever color you set in tiny3d_SpecularMaterial();

And im wondering if it could be better to change the actual
Code:
tiny3d_SetAmbientLight(0.8f, 0.8f, 0.8f);
To
Code:
tiny3d_SetAmbientLight(1.0f, 1.0f, 1.0f);
I guess the actual value is "softening" a bit the whole scene (so probably it was a good idea to reduce it a bit), but im suggesting it a bit for the same reasons i mentioned before... if we set the lights to a pure white then the resulting colors are going to be exactly whatever colors you setup for the material
The point is... i think the way how tiny3d works internally to calculate the final color is to multiply the color of the light * color of the material... so.... if we use the value 1 for the light then the only thing that matters is the color of the material (and this gives you more control when playing around with the material settings)

Notes (my selection of materials)
For the PS3 and PSP cases i decided to use the "perl" material from one of the white tones availables in the links i posted. In real world the PS3 and PSP cases surface is very "flat" (so it needs to generate well defined reflections)
For the PS2 case i used the "black rubber" because the PS2 case surface have some "roughtness"
And for PS1... well, the problem is in real world the PS1 material is like "crystal clear" and we cant represent it... so we have full freedom to select any other... first i thought in using one of the metallic materials (silver, gold, etc...), but from them probably the most interesting is "chrome"... i guess that chrome effect could look nice :D

Notes (material_cover)
In this one i kept the same settings from actual managunz code, im not modifying it, but i have the feeling that it needs some adjustments (disable ambient ?, increase diffuse ?, and increase specular and shininess ?)
 
Last edited:
...you have to know the transparency is very ugly (probably because of the way I build the boxes...).
So, i'm not using it. I tried several predefined materials properties (from 3DS MAX libraries) and none of them is well represented... I don't know if it come from the tiny3D lib or maybe I didn't set the light properly or something else maybe.... I don't know.
So, I just tryed different random values... I'll try to reduce the light on PS3/PSP box (I think it's the same).
The geometry of the boxes is nice, not sure why you said that, incase you decide to use the new materials i suggested in my previous post, please try again with the transparency effects

As far i understood from the few tiny3d i did read... the only place where we can do it (in a "raw" way, without textures or dirty tricks) is with the alpha value of tiny3d_AmbientMaterial();
You are using alpha = 1.0f (fully opaque) but for PS3 and PSP cases i guess it should be something like 0.6f

And for the PS1 case... well, thats something extreme because it should look like glass :D maybe tiny3d cant represent it well... but try something very small like 0.3f (in the "chrome" material, maybe that chrome effect with a very low alpha matches fine with the "glass" effect we need)
 
Last edited:
I already have a headache, I don't want to increase my pain with these tests. I'm sorry, I won't do it.
If you want to change something like the materials properties or the light then send me the main.c or pull a reques, I'll accept every change you suggest :p
I'm sry to not be enthusiastic about this...
 
I mentioned all this because is related with your last commits, i was looking at them trying to figure how tiny3d works and i realized the "materials lists" could be handy to simplify it, but i was not going to ask you to invest lot of time in adjusting them, i understand that is not a priority

The other reason is because i found that links with material settings for openGL and i assumed they should look fine (because someone very used to openGL dedicated some efforts to adjust them well)... but im not sure if we can use the same values in tiny3d and openGL to be honest, i was reading some openGL documentaion and i realized it uses the "phong lighting model". Incase tiny3d uses that i guess they should look identical to the images from the link, so in some way... by using that materials we are sure that should be "good enought" (without any problem in the way how are adjusted his settings) and there is no much need to change them

What i mentioned about transparency/alpha effects was just a brainstorming, i dont expect this to work very fine anyway because it would allow (partially) to see the internals of the case, and there is no internal geometry... and adding a very complex internal geometry would increase the graphic load, etc... so never minds... was just an idea, and mostly for PS3 and PSP that are partially opaque and doesnt needs internal geometry

Also, in the last mgz beta you uploaded i had the feeling that the (diffuse?) effects of the cover material was reduced... im not sure about this because i have not compared the changes of the commits, is just a feeling, and i have not used that mgz beta version so much
 
Last edited:
Every 3D renderering sofware have a huge library of materials. I masterize 3DS max which is for me the reference. I use several materials from 3DS max lib and none of them where rendered correctly.
I learned it at school that's probably why I don't want to work on it, I already know this path, I want to "play" with something new.
 
Got it, is a bad timing to talk about lights and materials, initially i thought there was a problem in the geometry and when i was looking at the images trying to figure what was happening i started talking about shadows/lights and later about materials too, is hard to talk about only one of this things because the final result visually is a combination of all them and is confusing

But there is still something broken related with the geometry, im not talking about it to insist in fixing it, but just because it worths to be mentioned (because that theory that says the first step to solve a problem is to talk about it, otherway it will not be fixed ever), im just trying to report it in the best way posible

I made this "PS3 full cover" to use as guinea pig for reference, when displayed in mgz the problem is located in the yellow dots of the "front" section
The yellow dots of my image are located in a curved surface (at half of the curve of the edge), the total of the curve is 90º and the yellow dots uses 45º of it
VlENOHe.jpg

But when the image is mapped to the surface the yellow dots located closest to the "front" surface are streched :/
qIYV4xz.png

A closer view of the problem in huge zoom with the case "on focus"
sIzA82L.jpg

Another view of the problem with the case "out of focus"
Ne9guvi.jpg

The geometry of the "back" section is working nice though
BXiAxUM.png

Note how the yellow dots located closest to the the "back" surface are located in a curved surface
VubsZun.jpg

And from a "back perspective view" the distortion of the lines at the "spine" generated by tiny3d is perfect
Hwhh1xg.jpg



This problem affects PS3, PS2 and PSP cases, it seems it was introduced in the github commit from a couple of days ago, when you changed the orientation of the tiny3d_Normal(); vertex created by the "for" loop of "COIN SUPERIEUR (2)" of function Draw_COVER3D();
The first time i took a look at the mgz beta version you uploaded with the normals modifyed i thought the problem was solved completly (because that made the shadow to dissapear completly), but it seems is not completly fixed
And... im wondering if the problem is again in the normals (because the fact that shadow dissapeared was smelling fishy, what we was trying to achieve was to "invert" the direction of the shadow horizontally, not making it dissapear)

By reading the code i dont have a good mental image of the geometry (so i cant even imagine the location of the normals generated in the "for" loops), if i make an effort i could understand a bit how the geometry is generated, we was talking about it some days ago but i dont know well mgz code and all the variables and maths is hardcode... so i dont have anything to suggest related with the normals, but maybe you could figure it because you was rewriting that part of the code a couple of days ago

Btw, just an small suggestion (not sure if im wrong), since you agreeded to map the 2D covers to the "front" surface of the 3D case (ignoring the curves of the edges), im guessing we dont need to split the "COIN SUPERIEUR" in 2 "for" loops of 45º degrees each ?
It looks the way how is generated the geometry of the "COIN INFERIEUR" (with a single "for" loop of 90º) is working perfect, so im wondering if it would be better to generate "COIN SUPERIEUR" also with a single "for" loop of 90º degrees
 
Last edited:
Just an small detail, i made a new BR_LOGO.PNG, i think the PS3 case is going to look better with it. Actually, it looks partially fine in my tests with the actual mgz code, you can see i was using a experimental version of it in a screenshot of my previous post
DOWNLOAD ---> http://s000.tinyupload.com/index.php?file_id=06323314565438269979

But to update this image is not just a matter of replacing the file, the problem is...
The actual image is blue https://github.com/Zarh/ManaGunZ/blob/master/pkgfiles/USRDIR/GUI/common/BR_LOGO.PNG
And you are adjusting his color with code to convert all pixels to black, right ?. Not sure at which point of the code though, initially i was wondering if is made with some material settings specific for BR_LOGO, but im editing my post because im not sure where is made that color magic

Well... the new image needs to be displayed with standard settings (without color conversion) because is made using only white+black pixels (it represents a "fake" 3D effect in a 2D image and only contains light/shadows effects around a "hole"). This way it can be used on top of any base color

What we need to achieve is something close to the image below (or we need to try to get close to it, i can continue modifying the PNG incase are needed some adjustments)
Just to be clear... the image below is made with photoshop, is made just by pasting the new BR_LOGO.PNG i uploaded in this post on top of a screenshoot from my previous post, but the actual managunz code doesnt displays it like this (the code is converting the white pixels to black)
seGBXGB.jpg


*I been editing my previous post to try to explain it better
 
Last edited:
I splitted "COIN SUPERIEUR" because at first, I wanted to display the cover 2D with a rounded corner (not full just half of it = 45°) then when I saw the result, it was ugly, streched so, I changed my mind and displayed the front cover without the rounded corner, I didn't think too much about it. It confirm your post here : https://www.psx-place.com/threads/managunz-ps3-backup-manager-by-zar.1198/page-56#post-255845 there is something weird with this corner. I'll try to fix it.
 
Back
Top