|
[TGF] Kurs obiektu MCI |
| Autor |
Wiadomość |
Aethera
Bohaterka
 
Pojedynki: być może
Pomogła: 7 razy Posty: 382
10120 Prestiż
|
Wysłany: 30-12-2005, 16:11 [TGF] Kurs obiektu MCI
|
|
|
Obiekt MCI jest o tyle prostym składnikiem TGF-a, że jedyne co potrafi to wysyłać polecenie ( ewentualnie może być niszczonym ). Jednak nie jest to takie mało skomplikowane . Dzięki niemu możemy się komunikować z urządzeniami Audio i Video. Zacznijmy jednak praktykę.
Tworzymy nowy obiekt i klikamy zakładke multimedia
Wybieramy obiekt MCI
Teraz pozostaje wybrać urządzenie którym się posłużymy. Oto przykładowe urządzenia :
Kod: | cdaudio - Odtwarzacz CD Audio
MMMovie - Multimedialny odtwarzacz filmów
scanner - Skaner obrazków
waveaudio - Urządzenie audio odtwarzające cyfrowe pliki wave
sequencer - Sekwencer MIDI |
Aczkolwiek inny komputer, inne urządzenia , sprawdzamy je w pliku system ini w pod [mci]. Dla przykładu mój komputer posiada takie oto urządzenia :
Kod: | [mci]
cdaudio=mcicda.drv
sequencer=mciseq.drv
waveaudio=mciwave.drv
avivideo=mciavi.drv
videodisc=mcipionr.drv
vcr=mcivisca.drv
MPEGVideo=mciqtz.drv
MPEGVideo2=mciqtz.drv |
Na początek wybierzmy sequencer. Zapiszmy grę w jakimś pustym folderze, skopiujmy tam dowolną muzyke midi i nazwijmy ją muzyka.mid.
Teraz przechodzimy do naszego przykładu, tworzymy przycisk, nadajemy mu etykiete "Graj". Tworzymy następne przyciski i nadajemy im etykiety "Pauza" i "Stop". W edytorze zdarzeń obieramy warunek "Start of Level". Jako zdarzenie wybieramy oczywiście send command.
Chcemy teraz otworzyć naszą muzyke midi. Musimy posłużyć się poleceniem open czyli otwórz. Wpisujemy w cudzysłowia open i po spacji musimy podać nazwę i ścieżke muzyki. Jednak na innym komputerze ścieżka może być inna. Dlatego jako oznaczenie dysku wpisujemy %drive%, a jako oznaczenie ścieżki - %dir%. Następnie bez spacji wpisujemy nazwę pliku muzycznego czyli muzyka.mid. Po spacji wpisujemy alias, potem znów spacja i music. Music wyznacza typ odtwarzanego pliku. Alias pozwala grać ponad poziomami gry.
Teraz dla kliknięć poszczególnych przycisków wysyłamy takie komendy:
"Play" - "play music"
"Pause" - "stop music"
"Stop" - "close music"
I to wszystko. Dodałabym jeszcze że do play można dodać "from x" oraz "to x" gdzie x to pozycja w utworze (niestety nie wiem w jakiej jednostce) .
Oprócz odtwarzania muzyki midi, MCI nadaje się do odtwarzania filmów, dźwięków, nawet potrafi otwierać kieszeń CD czy nagrywać dźwieki, ale to wymaga głębszej znajomości komend MCI. Kto spotkał się z JBuilderem to na pewno miał lub będzie miał doczynienia z MCI. A tym czasem - do następnego kursu!
[Przepraszam za ewentualne błędy i niejasności - to mó pierwszy kurs!] |
| Ostatnio zmieniony przez Minty 10-09-2006, 21:50, w całości zmieniany 1 raz |
|
|
|
 |
BROO
Pupogłowy Wizard x-)

Pojedynki: nie
Pomógł: 37 razy Posty: 502
31680 Prestiż
|
Wysłany: 30-12-2005, 16:35
|
|
|
W całym tym kursie największym problemem jest domyślenie się, jak powinna wyglądać przykładowa komenda otworzenia pliku muzyki... open %drive%%dir%muzyka.mid.
A tak poza tym, pokolorowanie nazw komend w kursie byłoby fajnym rozwiązaniem. |
|
|
|
 |
Minty
Stwórczyni omc dr fizyki
 
Pojedynki: być może
Pomogła: 259 razy Posty: 3447
33795 Prestiż
|
|
|
|
 |
Fadex
Legenda #4; #12; #18; #20; #21; #27
 
Pojedynki: nie
Pomógł: 105 razy Posty: 1773
51612 Prestiż
|
Wysłany: 17-12-2006, 23:57
|
|
|
| A ja chciałbym się spytać, jaka komenda jest do odtworzenia/zamknięcia sampla? |
_________________ If it doesn't have to work, I can optimize any code to a runtime of zero. What's your superpower?
wat |
|
|
|
 |
jarlfenrir
Generał brygady
 
Pomógł: 82 razy Posty: 1731
37283 Prestiż
|
Wysłany: 18-12-2006, 00:37
|
|
|
Zdaje się, że
Play "nazwa"
close "nazwa" |
|
|
|
 |
Fadex
Legenda #4; #12; #18; #20; #21; #27
 
Pojedynki: nie
Pomógł: 105 razy Posty: 1773
51612 Prestiż
|
Wysłany: 18-12-2006, 00:53
|
|
|
| Fenrir - próbowałem, nie działa... mam nadzieję, że dobrze ustawiam zdarzenia ;] |
_________________ If it doesn't have to work, I can optimize any code to a runtime of zero. What's your superpower?
wat |
|
|
|
 |
Minty
Stwórczyni omc dr fizyki
 
Pojedynki: być może
Pomogła: 259 razy Posty: 3447
33795 Prestiż
|
Wysłany: 18-12-2006, 14:52
|
|
|
Odtwarzanie:
open ścieżka
play ścieżka
Kończenie:
stop ścieżka
close ścieżka
Chyba |
|
|
|
 |
jarlfenrir
Generał brygady
 
Pomógł: 82 razy Posty: 1731
37283 Prestiż
|
Wysłany: 18-12-2006, 18:02
|
|
|
| RomanX napisał/a: | Odtwarzanie:
open ścieżka
play ścieżka
Kończenie:
stop ścieżka
close ścieżka
Chyba |
Prawie
Open scieżka alias=nazwa
play nazwa
stop nazwa
close nazwa
W Wersji 1.04 był dobry przykład do tego, wiec jak ktoś ma, to może sprawdzić. |
|
|
|
 |
kami95
Mięso armatnie
 
Posty: 1
5 Prestiż
|
Wysłany: 25-08-2007, 11:38
|
|
|
Jeśli komuś to nie wyszło, niech spróbuje tak: umieścić trzy przyciski: play, pause, stop i obiekt MCI. Jako urządzenie MCI należy wpisać sequencer. program zapisujemy w pustym folderze i przenosimy tam dowolną muzykę, np. muzyka.mid. Przechodzimy teraz do edytora zdarzeń. początek poziomu (start of level) ustawiamy jako pierwsze zdarzenie. pod MCI klikamy wyślij polecenie (send command) i wpisujemy: "open %drive%%dir%muzyka.mid alias music". jeśli chcemy, żeby muzyka była odtwarzana na początku poziomu, wysyłamy drugie polecenie - "play music". teraz zaprogramujemy przyciski, najpierw play - wysyła polecenie "play music". pause - "stop music". stop - "close music" kiedy wciśniemy stop, trzeba będzie ponownie podać komputerowi ścieżkę do odtworzenia. tworzymy nowe zdarzenie: po naciśnięciu spacji - wyślij polecenie "open %drive%%dir%muzyka.mid alias music"
możemy również zaprogramować, żeby po naciśnięciu jakiegoś klawisza (np. a) odtwarzany był drugi utwór (muzyka2.mid) wystarczy wysłać komendę wczytywania, tylko zamaiast myzyka.mid, wpisać muzyka2.mid. pliki MIDI mogą mieć inną dowolną nazwę, niekoniecznie muzyka.mid |
|
|
|
 |
|
|