PS3 PKGi PS3 beta release

Discussion in 'Homebrew Development' started by bucanero, Dec 3, 2019.

  1. 6,785
    6,405
    622
    sandungas

    sandungas Moderator Developer

    Joined:
    Dec 31, 2014
    Messages:
    6,785
    Likes Received:
    6,405
    Trophy Points:
    622
    Location:
    Babylon 20xxE series
    You forgot to add the font shadows behind the "install" and "menu" texts, and i think it would look better starting that texts in uppercase, "Install" and "Menu" (instead of "install" and "menu")
    Pretty cool shadow effects btw :encouragement:


    Edit:
    Also, the color of "install" and "menu" texts is different than the color of the other texts... it looks like "install" and "menu" texts are pure white (or pure opaque), and the others have a bit of transparency or you softened that white tone a bit
     
    Last edited: Dec 20, 2019
    Neal Cullum likes this.
  2. 291
    497
    97
    bucanero

    bucanero Developer

    Joined:
    Jun 29, 2019
    Messages:
    291
    Likes Received:
    497
    Trophy Points:
    97
    Gender:
    Male
    Location:
    Argentina
    Home Page:
    yes, I was playing around a bit with the fonts, and added a shadow effect (I think it also improves the readability a bit too)

    you're right about the missing shadow in the menus at the bottom, also they're pure white with no alpha, the text with shadows is using a bit of alpha to blend better with the shadow&background

    I think we were talking about text shadows at some point, right? how I did it, is like this:
    I draw the text shadow first, with a small pixel offset (e.g., (x+2, y+2) pixel shadow), then I draw the text again, on top, with the original position (x, y) . The visual result is quite nice, :D although you're drawing all the text twice. ;)
     
  3. 6,785
    6,405
    622
    sandungas

    sandungas Moderator Developer

    Joined:
    Dec 31, 2014
    Messages:
    6,785
    Likes Received:
    6,405
    Trophy Points:
    622
    Location:
    Babylon 20xxE series
    Font shadows improves readability a lot, is a nice feature that allows you to use backgrounds with bright colors
    You know, with the actual background you are using in blue dark tones there is no problem, the shadows are there, not much notable, they makes the texts to look a bit better, but are not really needed

    The problem is if you use a background with lot of bright tones, or areas fully white... in that case displaying white texts on top of white would make it unreadable. The font shadows prevents that :)
    In other words, the font shadows are giving you more freedom to use other backgrounds

    -----------
    I was talking about that trick with zar, rendering the texts 2 times with an offset XD
    I think it would be better to increase the size of the shadow btw... the goal is to try to "surround" the real font

    Taking this to the extreme... lets say that area of the background is fully white... then you would like to have a bit of "shadow" all around it
    Not sure how much though, or how would look

    The horizontal bars at top and bottom could be added a shadow too with a polygon to prevent this situation too of "white on top of white"
    ....and i noticed the thickness of the horizontal bars is diffrent (the bar at top looks a bit wider)... lol, sorry for being so picky, are small details without much importance :)
     
    DeViL303 and Algol like this.
  4. 291
    497
    97
    bucanero

    bucanero Developer

    Joined:
    Jun 29, 2019
    Messages:
    291
    Likes Received:
    497
    Trophy Points:
    97
    Gender:
    Male
    Location:
    Argentina
    Home Page:
    well in that case I think the shadow would be some kind of "black border" around the letter, right?

    It could be achieved with the "print 2 times" trick, but in that case I think that you'd have to print "character by character", the normal letter and the bigger shadow/border letter, so they're both centered at the same point.


    honestly I didn't pay too much attention to the UI in the first versions, I left most of the original PS Vita code as it was (even the background.png was the original one from the Vita app :D). Now I'm starting to put some time on it, so it looks nicer. :)

    I've finished the support for japanese/non-english characters today, but I'm not sure if I should release right away, or spend a bit more time on other UI details too. Probably I'll wait and try to add some other improvements.
     
    DeViL303, sandungas and Algol like this.
  5. 6,785
    6,405
    622
    sandungas

    sandungas Moderator Developer

    Joined:
    Dec 31, 2014
    Messages:
    6,785
    Likes Received:
    6,405
    Trophy Points:
    622
    Location:
    Babylon 20xxE series
    Yes, the goal is to have a bit of "black border" all around every character, im going to show 2 images as example but as i said this is hard to achieve and im not sure if is posible to do it accuratelly, in a image editor app (photoshop, gimp, etc) is easy but with graphic libraries for PS3 im not so sure how much tricky could be to achieve this effect
    Also, in this example im pushing this to the extreme of the worst posible scenario, with a "white font on top of white background", lol
    The point is is you achive to do this with "white on white" it becomes failproof for all other colors, it gives you 100% freedom to choose whatever you want with the font and background colors

    In the actual PKGi the shadow have the same size than the font, and seems to be displaced X+4 and Y+4
    [​IMG]
    And this is (in my oppinion) what you should try to achieve
    [​IMG]


    The trick is... if you want to move the shadow a few pixels... then the size needs to be increased a few pixels + a bit more
    Some examples...
    For shadow offset +4.... size should be +6 or so
    For shadow offset +10.... size should be +13 or so
    For shadow offset +20... size should be +25 or so

    In the first example i mentioned, using shadow offset +4 and size +6 is pretty close to what you was doing... this would create shadows of 4 pixels in a direction... and a thin border of 2 pixels in opposite direction (because 6-4=2)

    It doesnt needs to be very notable... also this is not a visual effect intended to look great, is mostly a prevention to avoid problems, and most of the time (in dark areas of the background) this effect is not going to be notable

    In the image i made with photoshop was easyer because it was at big resolution and the shadow is a degrade.. but in the PS3 graphic libraries with the trick you are using rendering the texts 2 times doesnt works like that, the shadow at bottom will have "sharp edges"
    So try to see if you can get close to that, but dont get crazy with it, is just an small detail :)
     
    Last edited: Dec 21, 2019
    bucanero and DeViL303 like this.
  6. 291
    497
    97
    bucanero

    bucanero Developer

    Joined:
    Jun 29, 2019
    Messages:
    291
    Likes Received:
    497
    Trophy Points:
    97
    Gender:
    Male
    Location:
    Argentina
    Home Page:
    yes, your photoshop example helps to understand the goal of the border/shadow we have been talking about

    funny thing, I'm actually using a TEXT_SHADOW = 2 , but since everything in Tiny3D is virtual coordinates, it ends up being about 4px in the final 1920x1080 screen. :wink new: maybe I should try shadow=1 ? :D

    I was trying a very basic implementation of this border idea, the code could be something like:

    Code:
    while (*text) {
            SetFontSize(PKGI_FONT_WIDTH + PKGI_FONT_SHADOW*2, PKGI_FONT_HEIGHT + PKGI_FONT_SHADOW*2);
            SetFontColor(RGBA_COLOR(0, 128), 0);
            DrawChar(x - PKGI_FONT_SHADOW, y - PKGI_FONT_SHADOW, z, (u8) *text);
    
            SetFontSize(PKGI_FONT_WIDTH, PKGI_FONT_HEIGHT);
            SetFontColor(RGBA_COLOR(color, 200), 0);
    
            DrawChar(x, y, z, (u8) *text);
            x += PKGI_FONT_WIDTH + PKGI_FONT_SHADOW;
            text++;
    }
    
    it ends up drawing a "black border" around the letter, but it's not as stylish as your example... maybe I need to adjust the alpha to get a better blending
     
    sandungas likes this.
  7. 6,785
    6,405
    622
    sandungas

    sandungas Moderator Developer

    Joined:
    Dec 31, 2014
    Messages:
    6,785
    Likes Received:
    6,405
    Trophy Points:
    622
    Location:
    Babylon 20xxE series
    That way looks handy, and is simple enought :)
    Visually i dont know how it would look, the problem is the shadow by default is going to have sharp edges, but in real world the borders of the shadows are blurry :/

    In iris there is a visual effect used to create the reflections of the game covers on the floor. It displays the game cover image, mirrored, and shadowed and it does a degrade of his alpha
    I remember i was looking at it, but i dont know how is made... not sure if could be applyed in this case

    --------
    Ok, so that 4 pixels of your actual shadow i meassured are 2 tiny3D units... damn, we are going to low, lol
    It could be handy if tiny3D allows to use decimals, so rounding numbers... 0.5 tiny3D units are 1 pixel
    Not sure if tiny3D allows it though
     
  8. 6,785
    6,405
    622
    sandungas

    sandungas Moderator Developer

    Joined:
    Dec 31, 2014
    Messages:
    6,785
    Likes Received:
    6,405
    Trophy Points:
    622
    Location:
    Babylon 20xxE series
    Look, i mean this effect, at bottom of the games there is a reflection of them... the images at bottom (that looks like reflected on the floor) changes his alpha with the distance
    It looks like a nice trick to create degrades... but im not sure how is made
    [​IMG]
     
  9. 291
    497
    97
    bucanero

    bucanero Developer

    Joined:
    Jun 29, 2019
    Messages:
    291
    Likes Received:
    497
    Trophy Points:
    97
    Gender:
    Male
    Location:
    Argentina
    Home Page:
    yes, I think you can use decimals in Tiny3d, as everything is defined in float numbers... so probably a 0.5 would work.

    a degrading alpha blend would be really nice, but I'm not sure about a simple way to implement it... fonts have tricky shapes.
    in the "game case" example I think it's easier because the texture itself is a rectangle so I assume Irisman code is degrading the alpha along with the Y coordinate.
     
  10. 6,785
    6,405
    622
    sandungas

    sandungas Moderator Developer

    Joined:
    Dec 31, 2014
    Messages:
    6,785
    Likes Received:
    6,405
    Trophy Points:
    622
    Location:
    Babylon 20xxE series
    Im thinking in something but i guess is not going to work because the DrawChar() coordinates represents a corner of the character, right ? (not the center of the character)

    The idea was to display the shadow text 3 times at 3 different sizes, lets say:
    shadow_1 (in) at 25% alpha and size "S"
    shadow_2 (center) at 25% alpha and size "S+1"
    shadow_3 (out) at 25% alpha and size "S+2"

    This way the center of the shadow is at 75% alpha, it has a line all around at 50% alpha, and another line all around at 25%
    Lets say... is an (unneficient) degrade with 3 levels, lol

    But only could work incase the characters are drawn individually, and aligned from center
    And im not sure if is worthy to do it this way, i like image design but i like code too, and this seems to be one of the times when is hard to know where is the limit in between doing things with a good look, or doing them efficient
     
    bucanero likes this.
  11. 291
    497
    97
    bucanero

    bucanero Developer

    Joined:
    Jun 29, 2019
    Messages:
    291
    Likes Received:
    497
    Trophy Points:
    97
    Gender:
    Male
    Location:
    Argentina
    Home Page:
    yes, I think the trick there would be to draw each character using the center coordinates of the char, instead of the corner (x,y). I guess the code would have to calculate the center for each character before drawing, and also printing the same character 3 times feel a bit overkill :D
     
    sandungas likes this.
  12. 291
    497
    97
    bucanero

    bucanero Developer

    Joined:
    Jun 29, 2019
    Messages:
    291
    Likes Received:
    497
    Trophy Points:
    97
    Gender:
    Male
    Location:
    Argentina
    Home Page:
    I've just released PKGi PS3 v1.1.0

    quite a bunch of changes this time:

    * Added TTF fonts to support Japanese characters
    * Added SSL support (the app can download https:// links)
    * Added package install bubble for Direct downloads
    * Added background music
    * Added settings options for music and auto-update
    * Fixed UI issue where texts could go beyond the screen limits

    Merry X-mas! :D
     
    sandungas likes this.
  13. 291
    497
    97
    bucanero

    bucanero Developer

    Joined:
    Jun 29, 2019
    Messages:
    291
    Likes Received:
    497
    Trophy Points:
    97
    Gender:
    Male
    Location:
    Argentina
    Home Page:
    I've just released a new version, PKGi PS3 v1.1.2

    Latest changes:
    * Added content categorization and filtering
    * Added support for loading multiple database files
    * Added support for online db update/sync
    * Filter unsupported or missing URLs when loading a database
     
  14. 1
    0
    5
    Piki1989

    Piki1989 Forum Noob

    Joined:
    Nov 3, 2019
    Messages:
    1
    Likes Received:
    0
    Trophy Points:
    5
    Gender:
    Male
    Hello :)
    Awesome job guys! I have question regarding downloading directory. Is there any possibility to change it to external location ?
    External HDD or NAS server ?
    BR,
     
  15. 291
    497
    97
    bucanero

    bucanero Developer

    Joined:
    Jun 29, 2019
    Messages:
    291
    Likes Received:
    497
    Trophy Points:
    97
    Gender:
    Male
    Location:
    Argentina
    Home Page:
    It could be possible to save downloads to an USB drive, but only for direct downloads. Background downloads (handled by the XMB download manager) must remain on the ps3 HDD to work properly.

    if there's enough interest for this "save to USB" feature, I'll keep it in mind for the next version
     
  16. 1
    1
    7
    BernoO

    BernoO Forum Noob

    Joined:
    Jan 9, 2020
    Messages:
    1
    Likes Received:
    1
    Trophy Points:
    7
    Gender:
    Male
    @bucanero, first of all, this is THE pkg that i'll just need for everything. Thanks buddy.

    Question: How can we use the new "Added support for online db update/sync"? I've been reading the GIT and here and nothing, so we can test it. Also is a great way to maintain updated the db's.

    Y por sobre todas las cosas, gracias hermano vecino por tan genial port! Avisame si vienes a Chile para invitarte una chela (o un juguito, o un cafe...tu dices!) Me acabo de inscribir en psxplace solo por tu increible aporte.
    Saludos!
     
    bucanero likes this.
  17. 291
    497
    97
    bucanero

    bucanero Developer

    Joined:
    Jun 29, 2019
    Messages:
    291
    Likes Received:
    497
    Trophy Points:
    97
    Gender:
    Male
    Location:
    Argentina
    Home Page:
    hey, thanks for your comments and feedback! :D

    indeed, I forgot to explain how to use the database update/refresh feature... :ambivalence: I did the release and I was busy with other stuff, but now I went ahead and updated the docs on Github:
    https://github.com/bucanero/pkgi-ps3/blob/master/README.md#online-db-update

    Just follow the instructions there, it's quite easy: edit the config.txt , add the URLs you want, and then "Refresh". :)

    y si voy para Chile, aprovecharé la oferta y me tomaré una chela! :D
     
    Last edited: Jan 18, 2020
    Casavult and BernoO like this.
  18. 279
    205
    72
    Casavult

    Casavult Member

    Joined:
    Oct 28, 2016
    Messages:
    279
    Likes Received:
    205
    Trophy Points:
    72
    Location:
    London, United Kingdom
    Man this app looks fantastic. I can now free up space on my USB (my PS3 USB storage capacity is quite low) and have all the PKGs I want ready to download via this and much more!

    Thank you for your hard work!
     
    bucanero likes this.

Share This Page