I feel kinda bad for asking so much on this forum lol
But i lose nothing for asking, so here it goes!
If you have read my previows posts, i doing some kind of customizable clothing system.
So far thanks to the help from the people on this forum I managed to make almost everything, the only thing that remains regarding clothing customization is the colors.
I managed to get the im.MatrixColor working on a single, regular image.
However, when i try to replicate that on my dynamic images, I don't know how to make it work.
Here is how i got the one that works (without variables so it really doesnt do the trick for me, that is why im asking!)
image scene1 = im.MatrixColor(
"images/s1/s1_base.png",
im.matrix.hue(20))
This changes the hue from the scene1, however since the player will be able tu set multiple different colors, its just not realistic to set every different color on a different variable.
So instead i was trying to do it on the fly like this:
$ legs = "images/s0/s0_" + underwear + ".png"
image girl = Fixed(DynamicImage("[legs]"))
This method allows me to change the clothing on every scene without much effort. The bad thing is that I dont know sh** about python (or programming in general for that matter) so I dont really know the way I should include what i want. I already tried a few optnios that came to my mind, since i found nothing about this on the documentation about both the IM.MatrixColor and the dynamic images.
This is more or less what I tried:
$ legs = im.MatrixColor("images/s0/s0_" + underwear + ".png", im.matrix.hue(20)) # <---------- this didnt work!
image girl = Fixed(im.MatrixColor(DynamicImage("[legs]"), im.matrix.hue(20))) <------------ this didnt work neither!
I've tried many more things, and the further i got was getting the compiler to not crash and not getting an error message ingame.
Whenever I got a compiling error it would say something like wrong syntax or expecting int or similar stuff, ingame errors were along the lines of "couldnt find image (im.MatrixColor...etc)"
So yeah, the documentation didnt help me much neither so my last resort as always is asking the considerably-more-experienced forum users.
Any insight on how can i achieve this?
Also, is there any page that explains the overall terminology/structure of renpy's programming to know what to do in case those kind of silly things related to "not knowing where to place what" happens?
Again thanks for your patience with me!
im.MatrixColor changing hue value on a DynamicImage?
Forum rules
This is the right place for Ren'Py help. Please ask one question per thread, use a descriptive subject like 'NotFound error in option.rpy' , and include all the relevant information - especially any relevant code and traceback messages. Use the code tag to format scripts.
This is the right place for Ren'Py help. Please ask one question per thread, use a descriptive subject like 'NotFound error in option.rpy' , and include all the relevant information - especially any relevant code and traceback messages. Use the code tag to format scripts.
- nyaatrap
- Crawling Chaos
- Posts: 1824
- Joined: Mon Feb 13, 2012 5:37 am
- Location: Kimashi Tower, Japan
- Contact:
Re: im.MatrixColor changing hue value on a DynamicImage?
im manipulators only takes image files or images manipulated by other im manipulators.
You have to use DynamicDisplayable to include im manipulators instead of DynamicImage.
It's a bit difficult to understand, so I'll paste portion of my game code as example. Doll is an object that stores variables.
Full code: https://github.com/nyaatrap/renpy-utili ... ressup.rpy
You have to use DynamicDisplayable to include im manipulators instead of DynamicImage.
It's a bit difficult to understand, so I'll paste portion of my game code as example. Doll is an object that stores variables.
Code: Select all
init python:
def draw_doll(st, at, doll):
# Function that is used for dynamic displayable.
layers=[]
for layer in doll.layers:
image = "{}/{}/{}.png".format(doll.folder, doll.layer, doll.item)
# image = im.MatrixColor(image) #write your own code
if renpy.loadable(image):
layers.append(image)
return Fixed(*layers, fit_first=True), None
image paperdoll = DynamicDisplayable(draw_doll, doll)
Re: im.MatrixColor changing hue value on a DynamicImage?
Thanks for your help as always!nyaatrap wrote:im manipulators only takes image files or images manipulated by other im manipulators.
You have to use DynamicDisplayable to include im manipulators instead of DynamicImage.
It's a bit difficult to understand, so I'll paste portion of my game code as example. Doll is an object that stores variables.Full code: https://github.com/nyaatrap/renpy-utili ... ressup.rpyCode: Select all
init python: def draw_doll(st, at, doll): # Function that is used for dynamic displayable. layers=[] for layer in doll.layers: image = "{}/{}/{}.png".format(doll.folder, doll.layer, doll.item) # image = im.MatrixColor(image) #write your own code if renpy.loadable(image): layers.append(image) return Fixed(*layers, fit_first=True), None image paperdoll = DynamicDisplayable(draw_doll, doll)
Still, I'm gonna be honest, I've been trying to figure out not only how your code works but also how it is structured, and I just can't get the hang of it.
Much less get it to work on my game, lol.
I hate to say this after all the great help I got from you and other people in this forum, but since im studying C# now, I'm going to try and do the visual novel in unity instead since it uses C# and will probably be less painful for me, because I hate getting stuck on every little detail.
Still, Renpy is a great software, and if I were to do a more simple novel like the regular dialogue focused multiple-ending novel, i would be able to do it without problems at all.
But I want to be do more than that if possible. If my luck with unity is as bad, I will come back to renpy and just skip all the hard game mechanics like clothing system and stick to the dialogue and menu options.
Otherwise i feel like im going to hate the process of developing my game, and that is something terrible for me!
It's something I make for joy, so I should never hate the process!
So again, sorry for this! if I ever get to release the game I will surely credit this forum in the credits no matter what engine it gets released on!
Thank you all for being so nice!
-
- Newbie
- Posts: 8
- Joined: Sun May 07, 2017 3:59 pm
- Deviantart: chaos-dark-lord
- Contact:
Re: im.MatrixColor changing hue value on a DynamicImage?
This is merely related, but how do you use various imags manipulators for the same image, like showing a desaturated image that is also flipped?
Im trying this:
But I run into an exception that says : TypeError: __init__() takes at least 2 arguments (2 given)
Im trying this:
Code: Select all
image h huf inner flip= im.MatrixColor("images_jackie/jackie_huffy_proud.png",im.matrix.saturation(0.4)*im.matrix.brightness(-0.1), im.Flip(horizontal=True) )
-
- Eileen-Class Veteran
- Posts: 1314
- Joined: Mon Sep 19, 2005 2:15 am
- Completed: Controlled Chaos / Sum of the Parts / "that" Midna game with ZONEsama
- Projects: Sparse Series/Oddments Shop original cartoon in Pevrea; Cybernetic Duels (fighting game); Good Vibin'
- Organization: Watercolorheart Studios
- IRC Nick: BCS
- Tumblr: adminwatercolor
- Deviantart: itsmywatercolorheart
- Github: Watercolordevdev
- Skype: heartnotes
- Soundcloud: Watercollider
- itch: watercolorheart
- Location: Florida
- Contact:
- RicharDann
- Veteran
- Posts: 286
- Joined: Thu Aug 31, 2017 11:47 am
- Contact:
Re: im.MatrixColor changing hue value on a DynamicImage?
When Ren'Py 7.4 is released, there's a new matrixcolor ATL property that should work better for this.
Code: Select all
# This must be enabled for matrixcolor to work
define config.gl2 = True
image test = "test_base.png"
label start:
show test:
matrixcolor HueMatrix(20)
The most important step is always the next one.
Who is online
Users browsing this forum: Google [Bot], Lucyper, MisterPinetree