- MisterlyssMembre
- Nombre de messages : 38
Distinction : aucune
Date d'inscription : 29/04/2016
[Résolu] Effet Nuage
Ven 23 Sep 2016 - 2:27
Salut !
J'aurai juste une petite demande je suis a la recherche d'un effet de nuage pour pour donner plus de vie a mes map . Pour être exact je recherche comment faire les ombres des nuages qui se déplacerait au dessus de la map pour donner une impression de carte plus vivante.
Je sais pas si c'est bien clair ^^'
J'aurai juste une petite demande je suis a la recherche d'un effet de nuage pour pour donner plus de vie a mes map . Pour être exact je recherche comment faire les ombres des nuages qui se déplacerait au dessus de la map pour donner une impression de carte plus vivante.
Je sais pas si c'est bien clair ^^'
- DragonFlyMembre
- Nombre de messages : 513
Age : 22
Localisation : Sous l'escalier des Dursley : ) LOL
Distinction : Relou-man [Mist']
Mon 2eme plus grand fan [Yama']
Cuisto' Maker de la commu' [Gel']
Date d'inscription : 30/08/2016
Re: [Résolu] Effet Nuage
Ven 23 Sep 2016 - 8:20
Bon je sais pas si ça peux t'aider, je viens de le prendre et je l'ai pas encore utiliser moi même.
Pour le sprite des nuages, tu le cree toi même, moi j'ai fais un truc rapide sous photoshop. Voilà le sprite a placer dans le dossier picture.
Pour le script:
Il y a déjà les configurations pour des nuages dans le script, en exemple. Pour l'utiliser, tu fais appel un script dans un event en mettant ceci a l'intérieur.
Après tu fais "effacer l'évènement" juste en dessous dans l'évènement ou tu a fais l'appel de script. En processus parallèle.
"Cloud" c'est le nom du sprite qui doit être dans le dossier Picture.
Bon voilà, j'ai juste fais un truc rapide, comme j'ai dis j'ai pas encore essayer ce script, alors t'étonne pas que les nuages soient un peu décaler, tu dois faire les ombres toi même
Pour le sprite des nuages, tu le cree toi même, moi j'ai fais un truc rapide sous photoshop. Voilà le sprite a placer dans le dossier picture.
- cloud:
Pour le script:
- Script de Woratana je crois:
- #===============================================================
# ● [VX] ◦ Multiple Fogs ◦ □
# * Use unlimited layers of fog *
#--------------------------------------------------------------
# ◦ by Woratana [woratana@hotmail.com]
# ◦ Thaiware RPG Maker Community
# ◦ Released on: 13/05/2008
# ◦ Version: 1.0
# ◦ ported to VX Ace by Necromus 17/03/2012
#--------------------------------------------------------------
#==================================================================
# ** HOW TO USE **
# * use event command 'Script...' for the any script line below~
#-----------------------------------------------------------------
#
#---------------------------------------------------------------
# ** SETUP FOG PROPERTIES & SHOW FOG **
# * You have to setup fog properties, before show fog~
#-------------------------------------------------------------
# * There are 3 ways to setup fog properties:
# >> Setup Fog [Custom]:
# $fog.name = 'image_name' # Image file name, must be in fog image path (setup path below).
# $fog.hue = (integer) # Fog's hue. 0 - 360, 0 for no hue.
# $fog.tone = [red, green, blue, gray] # Fog's tone color.
# $fog.opacity = (integer) # Fog's opacity. 0 - 255, you will not see fog in 0.
# $fog.blend = (0, 1, or 2) # Fog's blend type. 0 for Normal, 1 for Add, 2 for Subtract.
# $fog.zoom = (integer) # Fog's size (in %). 100 for normal size.
# $fog.sx = (+ or - integer) # Fog's horizontal move speed.
# $fog.sy = (+ or - integer) # Fog's vertical move speed.
#
# >> Setup Fog [From Preset]:
# (You can setup fog presets, in part FOG PRESET SETUP below)
# $fog.load_preset(preset_id)
#
# >> Setup Fog [From Fog that showing]:
# $fog.load_fog(fog_id)
#
#--------------------------------------------------------------
# ** SHOW FOG **
#-------------------------------------------------------------
# After setup the fog, show fog by call script:
# $fog.show(fog_id)
#
# In case you want to show new fog on same ox, oy, tone as old fog. Call Script:
# $fog.show(old_fog_id, false)
#
# * fog_id: the ID number you want to put this fog in.
# (It can be any positive number or zero)
#
# After you show fog, the fog properties you've set will replace with default setting.
# (You can setup default setting, in part FOG DEFAULT SETTING below)
#
#--------------------------------------------------------------
# ** DELETE FOG **
#-------------------------------------------------------------
# You can delete 1 or more fog(s) at a time by call script:
# $fog.delete(fog_id, fog_id, fog_id, ...)
#
#---------------------------------------------------------------
# ** OLD FOG CONTROL EVENT COMMANDS **
#-------------------------------------------------------------
# Change Fog Tone:
# $game_map.fogtone(fog_id, [red, green, blue, gray], duration)
# e.g. $game_map.fogtone(1, [100,200,-100,0], 10)
# Change Fog Opacity:
# $game_map.fogopac(fog_id, new_opacity, duration)
# e.g. $game_map.fogopac(2, 200, 10)
#
#---------------------------------------------------------------
# ** ADDITIONAL SETTINGS **
#-------------------------------------------------------------
# Change Fog Image's Path:
# $game_map.fog_path = 'image_path'
# e.g. $game_map.fog_path = 'Graphics/Pictures/'
# Turn ON/OFF [Automatically clear all fogs when transfer player]:
# $game_map.fog_reset = (true / false)
#
#===============================================================
#==================================================================
# START ** MULTIPLE FOG SETUP **
#==================================================================
class Game_Map
alias wora_mulfog_gammap_ini initialize
def initialize
wora_mulfog_gammap_ini
#==================================================================
# ** MULTIPLE FOG SETUP ** SETTINGS
#--------------------------------------------------------------
@fog_path = 'Graphics/Pictures/'
# Fog image's path
@fog_reset = true # (true or false)
# Automatically clear all multiple fogs when transfer player
#==================================================================
@mulfog_name = []
@mulfog_hue = []
@mulfog_opacity = []
@mulfog_blend_type = []
@mulfog_zoom = []
@mulfog_sx = []
@mulfog_sy = []
@mulfog_ox = []
@mulfog_oy = []
@mulfog_tone = []
@mulfog_tone_target = []
@mulfog_tone_duration = []
@mulfog_opacity_duration = []
@mulfog_opacity_target = []
end
end
class Wora_Multiple_Fog
def set_default
#==================================================================
# ** MULTIPLE FOG SETUP ** FOG DEFAULT SETTING
#--------------------------------------------------------------
@name = ''
@hue = 0
@opacity = 64
@blend = 0
@zoom = 200
@sx = 0
@sy = 0
@tone = [0,0,0,0]
#==================================================================
end
def load_preset(preset_id)
case preset_id
#==================================================================
# ** MULTIPLE FOG SETUP ** FOG PRESET SETUP
#--------------------------------------------------------------
when 1 # Preset ID 1
@name = 'Cloud3'
@hue = 0
@tone = [0,0,20,0]
@opacity = 100
@blend = 0
@zoom = 150
@sx = 3
@sy = 3
when 2 # Preset ID 2
@name = '002-Clouds01'
@hue = 0
@tone = [0,0,0,0]
@opacity = 200
@blend = 1
@zoom = 200
@sx = -2
@sy = -2
#==================================================================
end
end
#==================================================================
# END ** MULTIPLE FOG SETUP **
# * Don't change anything below unless you know what you're doing.
#==================================================================
attr_accessor :name, :hue, :opacity, :blend, :zoom, :sx, :sy, :tone
def initialize
set_default
end
def load_fog(id)
@name = $game_map.mulfog_name[id].sub($game_map.fog_path, '')
@hue = $game_map.mulfog_hue[id]
@opacity = $game_map.mulfog_opacity[id]
@blend = $game_map.mulfog_blend_type[id]
@zoom = $game_map.mulfog_zoom[id]
@sx = $game_map.mulfog_sx[id]
@sy = $game_map.mulfog_sy[id]
tn = $game_map.mulfog_tone[id]
@tone = [tn.red, tn.blue, tn.green, tn.gray]
end
def show(id, reset_all = true)
$game_map.mulfog_name[id] = $game_map.fog_path + @name
$game_map.mulfog_hue[id] = @hue
$game_map.mulfog_opacity[id] = @opacity
$game_map.mulfog_blend_type[id] = @blend
$game_map.mulfog_zoom[id] = @zoom
$game_map.mulfog_sx[id] = @sx
$game_map.mulfog_sy[id] = @sy
$game_map.mulfog_tone[id] = Tone.new(@tone[0], @tone[1], @tone[2], @tone[3])
if $game_map.mulfog_ox[id].nil? or reset_all
$game_map.mulfog_ox[id] = 0
$game_map.mulfog_oy[id] = 0
$game_map.mulfog_tone_target[id] = Tone.new(0, 0, 0, 0)
$game_map.mulfog_tone_duration[id] = 0
$game_map.mulfog_opacity_duration[id] = 0
$game_map.mulfog_opacity_target[id] = 0
end
set_default
end
def delete(*args)
args.each do |id|
$game_map.mulfog_name[id] = ''
end
end
end
class Game_Interpreter
alias wora_mulfog_interpret_com201 command_201
#--------------------------------------------------------------------------
# * Transfer Player
#--------------------------------------------------------------------------
def command_201
if $game_map.fog_reset
if @params[0] == 0; id_map = @params[1]
else; id_map = $game_variables[@params[1]]
end
$game_map.clear_mulfog if id_map != @map_id
end
wora_mulfog_interpret_com201
end
end
class Game_Map
attr_accessor :mulfog_name, :mulfog_hue, :mulfog_opacity, :mulfog_blend_type,
:mulfog_zoom, :mulfog_sx, :mulfog_sy, :mulfog_ox, :mulfog_oy, :mulfog_tone,
:mulfog_tone_target, :mulfog_tone_duration, :mulfog_opacity_duration,
:mulfog_opacity_target, :fog_reset, :fog_path
alias wora_mulfog_gammap_upd update
def update(main)
wora_mulfog_gammap_upd(main)
@mulfog_name.each_index do |i|
next if @mulfog_name[i].nil? or @mulfog_name[i] == ''
# Manage fog scrolling
@mulfog_ox[i] -= @mulfog_sx[i] / 8.0
@mulfog_oy[i] -= @mulfog_sy[i] / 8.0
# Manage change in fog color tone
if @mulfog_tone_duration[i] >= 1
d = @mulfog_tone_duration[i]
target = @mulfog_tone_target[i]
@mulfog_tone[i].red = (@mulfog_tone[i].red * (d - 1) + target.red) / d
@mulfog_tone[i].green = (@mulfog_tone[i].green * (d - 1) + target.green) / d
@mulfog_tone[i].blue = (@mulfog_tone[i].blue * (d - 1) + target.blue) / d
@mulfog_tone[i].gray = (@mulfog_tone[i].gray * (d - 1) + target.gray) / d
@mulfog_tone_duration[i] -= 1
end
# Manage change in fog opacity level
if @mulfog_opacity_duration[i] >= 1
d = @mulfog_opacity_duration[i]
@mulfog_opacity[i] = (@mulfog_opacity[i] * (d - 1) + @mulfog_opacity_target[i]) / d
@mulfog_opacity_duration[i] -= 1
end
end
end
#--------------------------------------------------------------------------
# * Start Changing Fog Color Tone
#--------------------------------------------------------------------------
def fogtone(i, tone, duration)
duration = duration * 2
tone = Tone.new(tone[0], tone[1], tone[2], tone[3])
@mulfog_tone_target[i] = tone.clone
@mulfog_tone_duration[i] = duration
if @mulfog_tone_duration[i] == 0
@mulfog_tone[i] = @mulfog_tone_target[i].clone
end
end
#--------------------------------------------------------------------------
# * Start Changing Fog Opacity Level
#--------------------------------------------------------------------------
def fogopac(i, opacity, duration)
duration = duration * 2
@mulfog_opacity_target[i] = opacity * 1.0
@mulfog_opacity_duration[i] = duration
if @mulfog_opacity_duration[i] == 0
@mulfog_opacity[i] = @mulfog_opacity_target[i]
end
end
def clear_mulfog
@mulfog_name.each_index {|i| @mulfog_name[i] = '' }
end
end
$worale = {} if !$worale
$worale['MutipleFog'] = true
$fog = Wora_Multiple_Fog.new
class Spriteset_Map
alias wora_mulfog_sprmap_crepal create_parallax
alias wora_mulfog_sprmap_updpal update_parallax
alias wora_mulfog_sprmap_dispal dispose_parallax
def create_parallax
@mulfog = []
@mulfog_name = []
@mulfog_hue = []
wora_mulfog_sprmap_crepal
end
def update_parallax
wora_mulfog_sprmap_updpal
$game_map.mulfog_name.each_index do |i|
next if $game_map.mulfog_name[i].nil?
# If fog is different than current fog
if @mulfog_name[i] != $game_map.mulfog_name[i] or @mulfog_hue[i] != $game_map.mulfog_hue[i]
@mulfog_name[i] = $game_map.mulfog_name[i]
@mulfog_hue[i] = $game_map.mulfog_hue[i]
if @mulfog[i].nil?
@mulfog[i] = Plane.new(@viewport3)
@mulfog[i].z = 3000
end
if @mulfog[i].bitmap != nil
@mulfog[i].bitmap.dispose
@mulfog[i].bitmap = nil
end
if @mulfog_name[i] != ''
@mulfog[i].bitmap = Cache.load_bitmap('', @mulfog_name[i], @mulfog_hue[i])
end
Graphics.frame_reset
end
next if @mulfog[i].bitmap.nil?
# Update fog plane
@mulfog[i].zoom_x = ($game_map.mulfog_zoom[i] / 100.0) if @mulfog[i].zoom_x != ($game_map.mulfog_zoom[i] / 100.0)
@mulfog[i].zoom_y = ($game_map.mulfog_zoom[i] / 100.0) if @mulfog[i].zoom_y != ($game_map.mulfog_zoom[i] / 100.0)
@mulfog[i].opacity = $game_map.mulfog_opacity[i] if @mulfog[i].opacity != $game_map.mulfog_opacity[i]
@mulfog[i].blend_type = $game_map.mulfog_blend_type[i] if @mulfog[i].blend_type != $game_map.mulfog_blend_type[i]
@mulfog[i].ox = $game_map.mulfog_ox[i] + $game_map.display_x * 32 if @mulfog[i].ox != $game_map.mulfog_ox[i] + $game_map.display_x * 32
@mulfog[i].oy = $game_map.mulfog_oy[i] + $game_map.display_y * 32 if @mulfog[i].oy != $game_map.mulfog_oy[i] + $game_map.display_y * 32
@mulfog[i].tone = $game_map.mulfog_tone[i] if @mulfog[i].tone != $game_map.mulfog_tone[i]
end
end
def dispose_parallax
@mulfog.each_index do |i|
next if @mulfog[i].nil?
@mulfog[i].bitmap.dispose if !@mulfog[i].bitmap.nil?
@mulfog[i].dispose
end
wora_mulfog_sprmap_dispal
end
end
#==================================================================
# [END] VX Multiple Fog by Woratana [woratana@hotmail.com]
#==================================================================
Il y a déjà les configurations pour des nuages dans le script, en exemple. Pour l'utiliser, tu fais appel un script dans un event en mettant ceci a l'intérieur.
- Commande(exemple):
- $fog.name = 'cloud'
$fog.hue = 0
$fog.tone = [0,0,20,0]
$fog.opacity = 100
$fog.blend = 0
$fog.zoom = 200
$fog.sx = -2
$fog.sy = -2
$fog.show(1)
Après tu fais "effacer l'évènement" juste en dessous dans l'évènement ou tu a fais l'appel de script. En processus parallèle.
"Cloud" c'est le nom du sprite qui doit être dans le dossier Picture.
Bon voilà, j'ai juste fais un truc rapide, comme j'ai dis j'ai pas encore essayer ce script, alors t'étonne pas que les nuages soient un peu décaler, tu dois faire les ombres toi même
- MisterlyssMembre
- Nombre de messages : 38
Distinction : aucune
Date d'inscription : 29/04/2016
Re: [Résolu] Effet Nuage
Sam 24 Sep 2016 - 2:15
Sa donne plutot un effet de brouillard la ^^ mais je m'en servirai pour autre chose merci dragonfly ! ^^ Je vais continuer a chercher voir ce que je pe faire ^^
- HinolaModérateur
- Nombre de messages : 969
Age : 30
Distinction : Gagnant invaincu à ce jour de tous les concours de mapping de ce forum fait par Coco'
[Coco' ]
Grande figure du Mapping Show .
Grand admirateur de notre mascotte Vehyxine
STI Haruhiste like me [Hamu' ]
et fier de l'être ! [bibi ^^]
Un fier Homme du désert sans foi ni loi è_é [:3]
Date d'inscription : 21/05/2009
Re: [Résolu] Effet Nuage
Sam 24 Sep 2016 - 12:13
Les nuages sont blancs, si tu veux en faire une ombre il faut utiliser la fusion ($fog.blend)
En gros :
Si tu met à 1, l'image est "ajoutée" sur la map : on ajoute la couleur qui se trouve sur l'image
par exemple si sur un fog tu a un pixel bleu, sa ajoute du bleu à la couleur du pixel en dessous.
Si tu met à 2, sa "retire" la couleur. Si il y a un pixel blanc, sa retire du blanc, donc sa rend le pixel plus foncé.
Essais un peu avec des fog de différentes couleurs pour un peut mieux comprendre voir le truc ^^
Donc pour répondre à ta question : si tu met le fog comme t'a proposé DragonFly, met avec $fog.blend = 2
Si tu veux il y a pas mal de fog précréé sur RPG maker XP qui sont franchement pas mal, je pourrais les refiler.
Tu peux en trouver simplement ici aussi
https://www.google.com/search?q=RPG+maker+XP+fog&client=firefox-b-ab&biw=1920&bih=1010&noj=1&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjD4_uG4qfPAhUsKcAKHQbzDpgQ_AUICCgB
En gros :
Si tu met à 1, l'image est "ajoutée" sur la map : on ajoute la couleur qui se trouve sur l'image
par exemple si sur un fog tu a un pixel bleu, sa ajoute du bleu à la couleur du pixel en dessous.
Si tu met à 2, sa "retire" la couleur. Si il y a un pixel blanc, sa retire du blanc, donc sa rend le pixel plus foncé.
Essais un peu avec des fog de différentes couleurs pour un peut mieux comprendre voir le truc ^^
Donc pour répondre à ta question : si tu met le fog comme t'a proposé DragonFly, met avec $fog.blend = 2
Si tu veux il y a pas mal de fog précréé sur RPG maker XP qui sont franchement pas mal, je pourrais les refiler.
Tu peux en trouver simplement ici aussi
https://www.google.com/search?q=RPG+maker+XP+fog&client=firefox-b-ab&biw=1920&bih=1010&noj=1&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjD4_uG4qfPAhUsKcAKHQbzDpgQ_AUICCgB
Re: [Résolu] Effet Nuage
Sam 24 Sep 2016 - 12:30
RMXP propose ça de base : http://screencast.com/t/GrWiP8zvpO
Si ça t'intéresse on peut voir pour retoucher un peu l'image histoire d'enlever le côté très pixelisé. L'idée est juste d'avoir un sprite de faible opacité qui boucle dans tous les sens.
Si ça t'intéresse on peut voir pour retoucher un peu l'image histoire d'enlever le côté très pixelisé. L'idée est juste d'avoir un sprite de faible opacité qui boucle dans tous les sens.
- MisterlyssMembre
- Nombre de messages : 38
Distinction : aucune
Date d'inscription : 29/04/2016
Re: [Résolu] Effet Nuage
Lun 26 Sep 2016 - 1:45
Sa rend deja mieux avec les ombres effectivement ! ^^
Manque plus qu'a ce que je les fasses bouger et c'est nickel !
Manque plus qu'a ce que je les fasses bouger et c'est nickel !
- driccMembre
- Nombre de messages : 2760
Localisation : Lille
Distinction : Altruiste - Incarnation de la Patience [Mist']
Date d'inscription : 10/08/2009
Re: [Résolu] Effet Nuage
Lun 26 Sep 2016 - 11:28
C'est cette partie là qui est censé faire bouger les nuages :
ça ne fonctionne pas ? essayes avec des valeurs différentes .
- Code:
$fog.sx = -2
$fog.sy = -2
ça ne fonctionne pas ? essayes avec des valeurs différentes .
- DragonFlyMembre
- Nombre de messages : 513
Age : 22
Localisation : Sous l'escalier des Dursley : ) LOL
Distinction : Relou-man [Mist']
Mon 2eme plus grand fan [Yama']
Cuisto' Maker de la commu' [Gel']
Date d'inscription : 30/08/2016
Re: [Résolu] Effet Nuage
Lun 26 Sep 2016 - 12:15
Alors tu peux marquer que sujet est résolu non? Et j'aurai mes points, lol
- MisterlyssMembre
- Nombre de messages : 38
Distinction : aucune
Date d'inscription : 29/04/2016
Re: [Résolu] Effet Nuage
Lun 26 Sep 2016 - 13:30
Je l'ai mis en résolu hier ^^ merci pour votre coup de main les amis ! ^^
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|