Minisoutěž na další týden bude o placku Machr na C# (ano, existuje
několik nových placek, které zatím ještě nikdo neviděl ani nemá, ještě
nejsou vyrobené, čili v příloze pouze obrázek). Jelikož C# komunita je tu
obrovská, připravoval jsem dnes soutěž o chlup déle, aby to stálo za
to.
V příloze tohoto komentáře naleznete obrázek pozadí fontány. Není
nijak krásná, ale lépe jsem to dnes nestihl, zítra ji zkusím doladit,
nicméně se bude měnit už jen okolí Takové ty vyčnívající šedé věci (na obrázku jich je celkem
9) jsou vodní trysky.
Vytvořte okenní aplikaci a jako pozadí nastavte tento obrázek s
fontánou. Vyberte si nějakou působivou hudbu, co mění tempo, např.
takovouto: http://www.youtube.com/watch?… a tu na pozadí aplikace
přehrávejte.
Naprogramujte několik různých efektů vody za pomoci částicových
systémů (různě vysoký gejzír, tryska, rozprašovač...) a tyto efekty
přiřazujte jednotlivým tryskám. Voda musí samozřejmě stříkat z trysek.
Trysky nejsou nijak omezené, ta samá tryska může někdy vychrlit vysoký
sloupec vody a po chvíli fungovat zas jako rozprašovač a rozprašovat do
vějíře, mohou také tříkat proud vody, který vypadá jako parabola a
mění úhel, směr atd. Trysky zapínejte a vypínejte v timerech tak, aby
výsledný efekt ladil do hudby. Samozřejmě to zkombinujte se změnou efektů
v různých tryskách.
Snažte se prosím o objektovou aplikaci, k reprezentaci částic vody
využijte struktury (struct), nepoužívejte hotové částicové systémy.
Nejpůsobivější fontána vyhraje doposud unikátní placku Machr na C# .NET a
několik nálepek.
Můžete se zúčastnit i s jiným jazykem, alternativní placky jsou: Machr
na Javu, Machr na efekty, Machr na algoritmy. Jsem zvědavý, co všechno
zdejší C# komunita dokáže!
Ahoj teoreticky vzato se v Unity programuje také v C#, takže mohl bych se
účastnit v Unity?
PS:Mám tu strašně pomalej net takže se nedivte když nebudu reagovat dík
.
Tak snad tentokrát se zúčastním už i s dosaženým výsledkem .... bohužel mi do toho hraje
neustále hodně škola (navíc téd ještě SOČ), ale opět to zkusím
Hmmm, že bych se tu poprvé něčeho zúčastnil? Uvidím, kolik bude času
a zda budu mít nějaké dobré a chytré nápady, jak na to! Placka by se mi
určitě líbila
To je asi zbytečně složité, bude bohatě stačit, když si hudbu
otevřeš v nějakém editoru a zapíšeš si potřebné momenty v rytmu (ten se
opakuje, bude jich pár). Potom několik momentů kdy se přidávají nebo
ubírají další nástroje během písničky a bude to ok. Z těch free
editorů je dobrý Audacity.
Kód zde bude stejně uveřejněn, je to jeden z významů soutěží, aby
byl viditelný postup, jaký dotyčný použil k dosažení výsledku. Také mě
nenapadá, jaký to má důvod, ale když se někdo nechce účastnit, ať se
prostě neúčastní, alespoň mají ostatní vyšší šanci na výhru
Potom tedy nevím, proč nám tu znečišťuješ vlákno. Je tu spoustu
dobrých programátorů, kteří si to chtějí zkusit a něco se naučit. Vím,
že jsi mnohem lepší, než my všichni dohromady, tak sem prostě nechoď, už
mě tohle nebaví. Díky.
Částice mě vždycky lákaly, jenom jsem se k tomu ještě nedostal
(přidám se do soutěže).
Mám hned jednu otázku: "čisté 2D kreslení a vlastní particles" a "musí to
být jen o kreslení pixelů" znamená pouze že nesmím použít cizí particle
engine, nebo že ani nesmím používat sprity anebo dokonce že každá
částice musí být pouze jeden pixel?
Ahoj, na https://dl.dropbox.com/…0Salatik.zip je ke stažení moje
fontána. Není ještě zdaleka hotová, prostě nebyl čas. A musel jsem vzít
starší verzi, protože ta nová ještě není funkční.
Čekal jsem tedy větší účast, asi velikonoce nebo jsem to přepískl s
obtížností Hodnotil jsem
já a Honza Bittner.
Misaz: Odevzdal jsi to včas, je vidět velká snaha. Kód je ale velmi
dlouhý a nepřehledný, vůbec nepoužíváš metody, několik řádků se tam
opakuje snad stokrát, přitom by stačilo volat metodu s jiným parametrem.
Voda by měla bublat. Zajímavým prvkem byla kružnice, jak voda začala
vytékat, vypadalo to dobře. Možná kdybys proud po intervalech na chvilku
přerušoval, vypadalo by to,že voda teče.
Salátík: Pozdě, ale přece. Particle engine velmi pěkně napsaný, všiml
jsem si i polohování prodoudu myší. Kód je fakt ukázkový, krátký,
pěkný. Bohužel fontána vůbec nereaguje na hudbu, mohla to být skvělá
podívaná.
Jelikož Misaz to stihl včas a splnil zadání, placka patří jemu.
Můžeš si to cvičně zkusit přepsat pomocí metod, programátorské
myšlení máš dobré, ale tohle by chtělo ještě vypilovat.
Protože Salátíkovi jdou asi špatně hodiny a už podruhé poslal jen o
pár minut později velmi kvalitní aplikaci, tentokrát mu to uznáme a
získává placku také.
Gratuluji Michal Žůrek - misaz - máš to fakt dobré! A děkuji David Čápka.
Vím, že s časem na tom nejsem zrovna dobře a umlouvám se za to, ale 1.
dělám na tom pouze v pátek večer a v sobotu, 2. máme doma pouze 1 kabelové
připojení k internetu a 3. je strašně pomalý upload.
David Dostal skvělá práce! Opravdu pěkný particles engine a
přehledný kód. Samozřejmě i gratulace Michal Žůrek - misazovi. Máš to také
celkem dobré, ale takhle nepřehledný kód jsem ještě asi nikdy neviděl
. Ale je tam vidět kupa
práce a některé pěkné efekty na hudbu.
Jsem tu novej, tak jsem se trošku porozhlížel okolo. Tohle vlákno mě
zaujalo a zároveň zklamalo (že jdu pozdě). Nakonec jsem se rozhodl to
zkusit, i když jsem v XNA nikdy nic nedělal, a i když jdu po termínu .. zde
je výsledek http://webshare.cz/…fontanka.zip
Jde asi o tříhodinovou práci, co se týče audia, bere si to ze zvukovky
(takže je potřeba něco pustit), ale zároveň je otázka, jestli to nebude s
něčím hádat.
Chtěl jsem si pohrát, že levá fontána budou bassy a pravá výšky, ale
budu potřeba na ty interfacy víc času. Taky jsem si chtěl vyblbnout s
nějakýma particle efektama, ale jelikož zítra vstávám, pokračování
kdyžtak příště. Zatím se ta voda rozsypává stále na menší kapky a
výška proudu reaguje na volume.
Zároveň jsem se chtěl zeptat. Zkoušel jsem to deploynout na druhém pc a
nedařilo se. Přestože jsem prošel instalací přes publish a jsou tam
všechny prerequisites, nejde spustit. Za nakopnutí díky.
Wow, to je dobré! Škoda, že jsi s tím přišel až teď, mohl jsi vyhrát
Malé trysky by mohly
reagovat na nějaké změny v hudbě, ideálně si vytvořit informaci o rytmu,
ale to netuším, jak se dělá.
Publish bych moc nevěřil, zkoušel jsi ručně nainstalovat příslušný
redist a .NET? Pokud ano, dej si do hry na začátek try-catch a vypiš si co ti
to hlásí, bude tam nějaká výjimka.
Informaci o rytmu jsem se nažil zjistit a bohužel neúspěšně.
každopádně zkoušel jsem se napojit na Windows Media Player, tam by mělo
jít zjistit rytmus, výšku ,... hudby, ale nedařilo se mi to. Třeba někomu
se to povede
Já to nechtěl vázat na konkérní skladbu, takže je potřeba vycházet z
údajů v reálném čase, a tam je ta analýza dost složitá. Co mě teď
napadlo, že by šlo jednoduše reagovat na skoky v hlasitosti. Zkusím se na to
odpoledne ještě mrknout.
Ono by rytmus mohlo jít zjistit chvíli se zpožděním, ukládat si ty
skoky v hlasitosti třeba po 100ms a když se pattern najednou hodně změní (s
nějakou tolerancí), tak na to zareagovat.
Jenže právě se zpožděním už to nemá ten správnej efekt ..
každopádně podobně jsem to spáchal tady .. http://webshare.cz/…Fontanka.zip
Samotná aktualizace se provádí každých 5 screenů a rytmus se pak počítá
jako vážený průměr z posledních pěti hodnot (čili cca sekundu) .. pokud
vyroste volume o 20% maxima v dané chvíli oproti tomu průměru, půjde o
špičku s přiřazeným efektem.
Už jsem s tím nechtěl moc hrát, tak je to dost natvrdo, ale šlo by to
ještě zobecnit, případně těch algoritmů zkusit hned několik a k nim hned
několik různých efektů.
Co jsem zkoušel, hlavně ve skladbách s bicíma to funguje překvapivě
dobře, vzhledem k (minimálnímu) rozsahu úprav.
Vypadá to dobře , škoda
že mám XPčka a nejde mi to spustit (MMDeviceEnumerator). Také se
pokouším o automatickou reakci na hudbu. Ke zjištění informací o hudbě
využívám
No, u toho mediaplayeru je ale problém, že to odchytíš jen v tom, co
přehráváš v aplikaci .. já to od začátku pojal univerzálněji ..
odchytávám audio zvenčí, bohužel pro tebe pomocí knihovny, která
využívá api přidané až ve win7.
Ale nahrál jsem ti demo, ať ti to není líto .. www.youtube.com/watch?… .. btw ta hudba není zrovna moc
dobrá jako příklad.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.