Oh, that's exactly what I need =)

Thanks, Júlio!!!



Flávio Roberto
http://www.dcc.ufmg.br/~flavioro/



2012/2/6 Júlio César <ju...@julioc.me>

> Give a look on the Filesystem interface, which allows you to mount and
> read files from GCF:
> https://developer.valvesoftware.com/wiki/IFileSystem
>
> Júlio César
>
>
>
> Em 6 de fevereiro de 2012 13:22, Flávio Roberto <feg...@gmail.com>
> escreveu:
> > Got some updates on this.
> >
> > I was able to solve my problem of not being able to configure the
> particle
> > system when dispatched from the server like this:
> >
> > Created a temporary entity on Server and Client (CSynaesthesiaEntity and
> > C_SynaesthesiaEntity).
> >
> > On the server, it just transmits some info of the sound to the client
> > version (some EmitSount_t members).
> > On the client, it spawns a client-side only entity
> (C_SynaesthesiaProcessor)
> > to configure, dispatch and control a particle effect.
> >
> > Created a client-side only entity (C_SynaesthesiaProcessor) that creates
> and
> > maintains the particle effect based on information from the sound
> metadata
> > and audio features extraction.
> >
> >
> > I'm almost sure that that's not the most efficient way to do it, but I
> > believe the performance loss won't be a problem for a prototype.
> >
> >
> >
> > Now, the next task is to use an audio feature extraction library to read
> > some information from the game sounds. I have already integrated the
> library
> > (http://marsyas.info) to the source code using the FMOD tutorial on the
> wiki
> > as guide.
> >
> > However, as I am using the sounds from HL2 (my sounds folder does not
> exist)
> > I still haven't figured out how to access the game sound files - that are
> > inside the GCF. A really simple but ugly approach is to extract the game
> > sounds from the GCF to the mod's sound folder, but I would like to avoid
> > that. Can someone shed some light on this matter?
> >
> >
> > Thanks!!
> >
> > Flávio Roberto
> > http://www.dcc.ufmg.br/~flavioro/
> >
> >
> >
> > Em 26 de janeiro de 2012 15:08, Flávio Roberto <feg...@gmail.com>
> escreveu:
> >
> >> Okay, here I am again!
> >>
> >> I was able to inject some code in SoundEmitterSystem.cpp that spawns a
> >> particle system whenever/wherever a sound effect is played. This is
> part of
> >> the ugly, temporary (and a bit simplified) code:
> >>
> >> #if defined( CLIENT_DLL )
> >> #include "particles_new.h"
> >>
> >>
> void AttachParticleEffectForSynaesthesia(int entindex, const Vector* origin, 
> bool isVoice = false, float duration = 1, bool ignorez = false)
> >> {
> >>      if (!sv_synaesthesia_mode.GetBool() || origin == NULL)
> >>              return;
> >>
> >>      PrecacheParticleSystem("synaesthesia_particles");
> >>
> >>
>  CNewParticleEffect* pEffect = new 
> CNewParticleEffect(ClientEntityList().GetBaseEntity(entindex), 
> "synaesthesia_particles");
> >>
> >>
> >>
>  // If sound is a voice, shift it up a bit (because the sounds from voices 
> are emitted not from the mouths, but from chararacters' bellies)
> >>      Vector newOrigin = *origin;
> >>      if (isVoice) {
> >>              newOrigin += Vector(0,0, 45);
> >>      }
> >>      pEffect->SetControlPoint( 0, newOrigin );
> >>
> >>      // This sets the color of the particle effect to red. Later, it'll
> use a
> >> sound processing library to extract features and set the color
> accordingly
> >>
> >>      pEffect->SetControlPoint( 1, Vector(255, 0, 0));
> >>
> >>
> >> }
> >> #else
> >> #include "particle_parse.h"
> >>
> >>
> void AttachParticleEffectForSynaesthesia(int entindex, const Vector* origin, 
> bool isVoice = false, float duration = 1, bool ignorez = false)
> >> {
> >>      if (!sv_synaesthesia_mode.GetBool() || origin == NULL)
> >>              return;
> >>
> >>
>  DispatchParticleEffect( sv_synaesthesia_particle_name.GetString(), *origin, 
> QAngle(0,0,1), NULL);
> >> }
> >> #endif
> >>
> >>
> >> Results of a previous (almost equal) version of that code and particle
> >> system:
> >>
> >>
> >>
> http://www.youtube.com/watch?v=OHJ8iTb4T54&feature=context&context=C3e61f17UDOEgsToPDskJNfp_0vvinY3J-zCIyOzex
> >>
> >>
> http://www.youtube.com/watch?v=OqKrDiiqoCA&feature=plcp&context=C3e61f17UDOEgsToPDskJNfp_0vvinY3J-zCIyOzex
> >>
> >>
> >>
> >>
> >>
> >> Now I got one problem. When the sound is emitted from the client, I am
> >> able to configure the particle effect. But from the server side,
> >> DispatchParticleEffect does not give me the opportunity (right?).
> >>
> >> So now, I am moving to a more organized implementation. AFAIK, to be
> able
> >> to configure the particle effect, I have to create them on the client.
> But I
> >> have not yet understood the client/server entities thing yet.
> >>
> >> I would like to know if this can be a good way to do it:
> >>
> >> Create a "CSynaesthesiaEntity" on the server.
> >> Create a "C_SynaesthesiaEntity" on the client.
> >>
> >> For sounds triggered from the client, I spawn a "C_SynaesthesiaEntity"
> >> with the intended parameters to configure and spawn the particle effect.
> >> For sounds triggered from the server, I spawn a "CSynaesthesiaEntity"
> that
> >> will only trigger a "C_SynaesthesiaEntity" that will finish the job.
> >>
> >>
> >> Can that work??
> >>
> >>
> >>
> >> Thanks very much!
> >>
> >> Flávio Roberto
> >> http://www.dcc.ufmg.br/~flavioro/
> >>
> >> PS: About the previous issue with setting up HL2 maps, I ended up
> finding
> >> the configuration files with GCFScape and using them. =)
> >>
> >>
> >>
> >>
> >> Em 27 de dezembro de 2011 13:15, Flávio Roberto <feg...@gmail.com>
> >> escreveu:
> >>
> >>> Hey Saul,
> >>>
> >>> That was what I chose, but the configuration files were all from EP2.
> >>> But I have managed to make some progress these days and I got something
> >>> working (using GCFScape and tuning the configuration files).
> >>>
> >>> Now, to the modding =)
> >>> Thanks everyone and a late merry xmas!
> >>>
> >>>
> >>>
> >>> Flávio Roberto
> >>> http://www.dcc.ufmg.br/~flavioro/
> >>>
> >>>
> >>>
> >>> On Fri, Dec 23, 2011 at 7:51 PM, Saul Rennison <
> saul.renni...@gmail.com>
> >>> wrote:
> >>>>
> >>>> Use "Modify HL2 Singleplayer" as your Create a Mod option. It should
> >>>> work exactly like HL2 as far I recall.
> >>>>
> >>>>
> >>>> Kind regards,
> >>>> Saul Rennison
> >>>>
> >>>>
> >>>>
> >>>> On 23 December 2011 16:38, Flávio Roberto <feg...@gmail.com> wrote:
> >>>>>
> >>>>> Just to clarify: the problem is that my first step is to "recreate"
> the
> >>>>> HL2 environment (map sequence, configurations etc) so I can work on
> top of
> >>>>> it. And I'm still struggling with that.
> >>>>>
> >>>>>
> >>>>> Flávio Roberto
> >>>>> http://www.dcc.ufmg.br/~flavioro/
> >>>>>
> >>>>>
> >>>>>
> >>>>> 2011/12/23 Flávio Roberto <feg...@gmail.com>
> >>>>>>
> >>>>>> Oh, that's great! Thank you aVoX and Saul!
> >>>>>>
> >>>>>> aVoX, I had already found that folder
> (\sourcesdk_content\hl2\mapsrc),
> >>>>>> but there are only some of the maps there. In this case, I believe
> the
> >>>>>> option left is to use GCFScape on ...\steamapps\half-life 2
> content.gcf and
> >>>>>> decompile, right?
> >>>>>>
> >>>>>> One more thing: the configuration files created by the "Create a
> Mod"
> >>>>>> Wizard contain information as if it were based on EP2 (chapters,
> >>>>>> gameinfo...).
> >>>>>> Is that because I used the 2007 sdk version? Is there a quick way to
> >>>>>> reuse all (and only) the HL2 configuration files?
> >>>>>>
> >>>>>> Thanks!
> >>>>>>
> >>>>>> Flávio Roberto
> >>>>>> http://www.dcc.ufmg.br/~flavioro/
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>> On Fri, Dec 23, 2011 at 5:02 AM, <a...@arcticmail.com> wrote:
> >>>>>>>
> >>>>>>> Concerning 1. you should take a look in your
> >>>>>>> "...\SteamApps\<USER>\sourcesdk_content\hl2\mapsrc" directory. All
> maps are
> >>>>>>> available in a Hammer-readable VMF.
> >>>>>>>
> >>>>>>> aVoX.
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>> _______________________________________________
> >>>>>>> To unsubscribe, edit your list preferences, or view the list
> >>>>>>> archives, please visit:
> >>>>>>> https://list.valvesoftware.com/cgi-bin/mailman/listinfo/hlcoders
> >>>>>>>
> >>>>>>>
> >>>>>>
> >>>>>
> >>>>>
> >>>>> _______________________________________________
> >>>>> To unsubscribe, edit your list preferences, or view the list
> archives,
> >>>>> please visit:
> >>>>> https://list.valvesoftware.com/cgi-bin/mailman/listinfo/hlcoders
> >>>>>
> >>>>>
> >>>>
> >>>>
> >>>> _______________________________________________
> >>>> To unsubscribe, edit your list preferences, or view the list archives,
> >>>> please visit:
> >>>> https://list.valvesoftware.com/cgi-bin/mailman/listinfo/hlcoders
> >>>>
> >>>>
> >>>
> >>
> >
> >
> > _______________________________________________
> > To unsubscribe, edit your list preferences, or view the list archives,
> > please visit:
> > https://list.valvesoftware.com/cgi-bin/mailman/listinfo/hlcoders
> >
> >
>
> _______________________________________________
> To unsubscribe, edit your list preferences, or view the list archives,
> please visit:
> https://list.valvesoftware.com/cgi-bin/mailman/listinfo/hlcoders
>
>
_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please 
visit:
https://list.valvesoftware.com/cgi-bin/mailman/listinfo/hlcoders

Reply via email to