Miecz na plecach. 2891 8

O temacie

Autor Codeman

Zaczęty 15.07.2011 roku

Wyświetleń 2891

Odpowiedzi 8

Codeman

Codeman

Użytkownicy
posty53
Propsy33
  • Użytkownicy
Witam otóż mam problem. Chciałbym by miecz jednoręczny był trzymany na plecach ale animacja walki miecza była jak u jednoręcznego. Czy jest taka możliwość? Czy trzeba robić nowe animacje , może da się za pomocą skryptów? Prosiłbym o szybką odpowiedź :)
 

Sawik

Sawik

Moderator działu
Rebel
posty4772
Propsy3197
ProfesjaNierób
  • Moderator działu
  • Rebel
Można by dać go jako miecz dwuręczny z MDS'em walki bronią jednoręczną ale chyba miałbyś problem z wyjmowaniem broni (nadal będzie wyjmował z paska) chyba że jesteś gotowy na zabawę w podmienianie animacji :D
 
Życzę wam seksu analnego po stronie biernej.
Dropbox +500 mb na start
LowPoly
Wykonanie modelu niskopoligonowego to sztuka kompromisu. Nie jest to jedynie uproszczenie modelu wysokopoligonowego, ale głęboka modyfikacja oraz podejmowanie decyzji często zmieniających wygląd pierwotny obiektu, tak by przy najmniejszej ilości trójkątów uzyskać jak najwierniej odwzorowany kształt oryginału. Nie można też zapomnieć o tym iż musi nadal wyglądać przekonywająco i tak balansować by uzyskać efekt optymalny.

Podstawowym założeniem jest, że model nie powinien mieć zbędnych, niewidocznych dla gracza detali włączonych w geometrie. Większość obiektów jakie znajdują się w grze powinna prezentować się najlepiej z odległości około 3-5 metrów. Wszelkie detale, które zanikają, wydają się płaskie lub zlewają się z bryłą modelu należy uznać za zbędne i pozostawić je na normal mapie.

Fakt, iż gracz będzie w stanie podejść bliżej do obiektu i zobaczyć go z mniejszej niż 3m odległości nie powinno stanowić większego problemu, gdyż większą rolę odgrywają wtedy tekstury oraz dodatkowy detal zależny od materiału obiektu. To właśnie kompromis między wydajnością, a szczegółowością otoczenia.

Detal, którego nie widać z 3-5 metrów nie powinnien istnieć w geometrii modelu.
Krawędzie znajdujące się blisko siebie, które zlewają się z większej odległości należy uprościć do wspólnej płaszczyzny

krupam

krupam

Użytkownicy
posty105
Propsy43
Profesjabrak
  • Użytkownicy
Najłatwiej to ustawić broń na dwuręczną i dodać equip/unequip aktywujący .mds podmieniający animacje walki bronią 2H na te od 1H, jak to w MT było jak miałeś 100% skilla w walce 2H
 

Codeman

Codeman

Użytkownicy
posty53
Propsy33
  • Użytkownicy

Codeman

Miecz na plecach.
#3 2011-07-15, 13:33(Ostatnia zmiana: 2011-07-15, 13:34)
Hm equip/unequip rozumiem że w skrypcie z bronią. A by mógł ktoś zamieścić mi tego mds'a ? W mds'ach i animowaniu zielony jestem tak szczerze i bym był bardzo wdzięczny :D
Co prawda prostą animkę by naprawić problem jaki napisał sawik bym dał rade wykonać ale gorzej z mds'em :P
 

EdekSumo

EdekSumo

Wyspa Khorinis
posty1739
Propsy924
ProfesjaLvl designer
  • Wyspa Khorinis

EdekSumo
Wyspa Khorinis

Miecz na plecach.
#4 2011-07-15, 14:00(Ostatnia zmiana: 2011-07-15, 14:00)
Takiego czegoś nikt Ci nie da ale bo sporo z tym roboty.
No chyba że znajdzie się taka dobra duszyczka. :D
 

krupam

krupam

Użytkownicy
posty105
Propsy43
Profesjabrak
  • Użytkownicy
Model ("HuS")
{


meshAndTree ("Hum_Body_Naked0.ASC" DONT_USE_MESH)

aniEnum
{
modelTag ("DEF_HIT_LIMB" "zs_RightHand")

//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

///////////////////////
// 1H MOVEMENT
///////////////////////

// 1h-RUN
ani ("s_2hRun" 1 "s_2hRun" 0.1 0.1 MI "Hum_Amb_1hRunT3_M01.asc" F 0 50 FPS:10)
ani ("t_2hRun_2_2hRunL" 1 "s_2hRunL" 0.0 0.1 M. "Hum_1hRunT3.asc" F 1 11)
ani ("s_2hRunL" 1 "s_2hRunL" 0.0 0.0 M. "Hum_1hRunT3.asc" F 12 31)
{
*eventSFXGrnd (12 "Run")
*eventSFXGrnd (22 "Run")
}
ani ("t_2hRunL_2_2hRun" 1 "s_2hRun" 0.0 0.1 M. "Hum_1hRunT3.asc" F 32 38)
{
*eventSFXGrnd (32 "Run")
*eventSFXGrnd (37 "Run")
}
aniBlend ("t_2hRunR_2_2hRun" "s_2hRun" 0.2 0.2)

// 1h-Run Backwards Movement
ani ("t_2hJumpB" 1 "s_2hRun" 0.1 0.2 M. "Hum_1hParadeJumpT3.asc" F 1 14)

// 1h-WALK
aniAlias ("s_2hWalk" 1 "s_2hWalk" 0.1 0.1 MI "s_2hRun" F)
ani ("t_2hWalk_2_2hWalkL" 1 "s_2hWalkL" 0.0 0.1 M. "Hum_1hWalkT3.asc" F 1 18)
{
*eventSFXGrnd (15 "Run")
}
ani ("s_2hWalkL" 1 "s_2hWalkL" 0.0 0.1 M. "Hum_1hWalkT3.asc" F 19 38)
{
*eventSFXGrnd (27 "Run")
*eventSFXGrnd (36 "Run")
}
ani ("t_2hWalkL_2_2hWalk" 1 "s_2hWalk" 0.0 0.1 M. "Hum_1hWalkT3.asc" F 39 49)
{
*eventSFXGrnd (47 "Run")
*eventSFXGrnd (49 "Run")
}
aniBlend ("t_2hWalkR_2_2hWalk" "s_2hWalk" 0.2 0.2)

// 1h-Walk Backwards Movement
aniAlias ("t_2hWalk_2_2hWalkBL" 1 "s_2hWalkBL" 0.0 0.1 M. "t_2hWalkL_2_2hWalk" R)
aniAlias ("s_2hWalkBL" 1 "s_2hWalkBL" 0.0 0.0 M. "s_2hWalkL" R)

aniAlias ("t_2hWalkBL_2_2hWalk" 1 "s_2hWalk" 0.0 0.1 M. "t_2hWalk_2_2hWalkL" R)
aniBlend ("t_2hWalkBR_2_2hWalk" "s_2hWalk" 0.2 0.2)
{
*eventSFXGrnd (22 "Run")
}

///////////////////////
// 1H TURNING
///////////////////////

ani ("t_2hRunTurnL" 20 "t_2hRunTurnL" 0.1 0.2 M. "Hum_1hTurnT3.asc" F 1 24)
{
*eventSFXGrnd (5 "Turn")
*eventSFXGrnd (13 "Turn")
*eventSFXGrnd (19 "Turn")
}
ani ("t_2hRunTurnR" 20 "t_2hRunTurnR" 0.1 0.2 M. "Hum_1hTurnT3.asc" F 26 49)
{
*eventSFXGrnd (32 "Turn")
*eventSFXGrnd (42 "Turn")
*eventSFXGrnd (48 "Turn")
}

aniAlias ("t_2hWalkTurnL" 20 "t_2hWalkTurnL" 0.1 0.2 M. "t_2hRunTurnL" F)
aniAlias ("t_2hWalkTurnR" 20 "t_2hWalkTurnR" 0.1 0.2 M. "t_2hRunTurnR" F)

///////////////////////
// 1H STRAFING
///////////////////////

ani ("t_2hRunStrafeL" 1 "t_2hRunStrafeL" 0.1 0.2 M. "Hum_1hStrafeLT2_M02.asc" F 0 18)
{
*eventSFXGrnd (0 "Run")
*eventSFXGrnd (9 "Run")
}
ani ("t_2hRunStrafeR" 1 "t_2hRunStrafeR" 0.1 0.1 M. "Hum_1hStrafeRT2_M02.asc" F 0 18)
{
*eventSFXGrnd (0 "Run")
*eventSFXGrnd (9 "Run")
}

aniAlias ("t_2hWalkStrafeL" 1 "" 0.1 0.1 M. "t_2hRunStrafeL" F)
aniAlias ("t_2hWalkStrafeR" 1 "" 0.1 0.1 M. "t_2hRunStrafeR" F)

///////////////////////
// 1H TRANSITIONS
///////////////////////
// Movement-Modes
aniBlend ("t_2hRun_2_2hWalk" "s_2hWalk" 0.0 0.2)
aniBlend ("t_2hWalk_2_2hRun" "s_2hRun" 0.0 0.2)

ani ("t_2hRun_2_2hSneak" 1 "s_2hSneak" 0.1 0.1 M. "Hum_1hRun_2_Sneak.asc" F 17 23)
aniAlias ("t_2hSneak_2_2hRun" 1 "s_2hRun" 0.1 0.1 M. "t_2hRun_2_2hSneak" R)

aniBlend ("t_2hRunL_2_2hWalkL" "s_2hWalkL" 0.2 0.2)
aniBlend ("t_2hWalkL_2_2hRunL" "s_2hRunL" 0.2 0.2)

aniBlend ("t_2hSneakL_2_2hRunL" "s_2hRunL" 0.2 0.2)
aniBlend ("t_2hRunL_2_2hSneakL" "s_2hSneakL" 0.2 0.2)

///////////////////////
// 1H SWORD FIGHTING
///////////////////////
ani ("s_2hAttack" 1 "s_2hAttack" 0.0 0.1 M. "Hum_1hAttackComboT3_M05.asc" F 1 114)
{
*eventTag (0 "DEF_HIT_LIMB" "ZS_RIGHTHAND")
*eventTag (0 "DEF_OPT_FRAME" "4 36 73 107")
*eventTag (0 "DEF_HIT_END" "28 60 92 113")
*eventTag (0 "DEF_WINDOW" "10 33 42 65 78 97 110 113")

*eventSFX (4 "Whoosh" EMPTY_SLOT )
*eventSFX (72 "BACK" EMPTY_SLOT )
}

// Auf Höhen schlagen ????
// ani ("c_1hAttack_1" 1 "" 0.0 0.0 . "Hum_1hAttackUpT3.asc" F 0 19)
// ani ("c_1hAttack_2" 1 "" 0.0 0.0 . "Hum_1hAttackMidT3.asc" F 0 19)
// ani ("c_1hAttack_3" 1 "" 0.0 0.0 . "Hum_1hAttackDnT3.asc" F 0 19)
// aniComb ("t_2hAttackC" 1 "" 0.0 0.0 M. "c_1hAttack_" 3)
// {
// *eventTag (0 "DEF_HIT_LIMB" "ZS_RIGHTHAND")
// *eventTag (0 "DEF_OPT_FRAME" "7")
// }

// L/R-Schlag Loop
ani ("t_2hAttackL" 1 "" 0.0 0.2 M. "Hum_1hAttackT3_M03.asc" F 1 19)
{
*eventTag (0 "DEF_HIT_LIMB" "ZS_RIGHTHAND")
*eventTag (0 "DEF_OPT_FRAME" "3")
*eventTag (0 "DEF_HIT_END" "19")
*eventTag (0 "DEF_WINDOW" "8 19")

*eventSFX (5 "Whoosh" EMPTY_SLOT )
}
ani ("t_2hAttackR" 1 "" 0.0 0.1 M. "Hum_1hAttackT3_M03.asc" F 21 40)
{
*eventTag (0 "DEF_HIT_LIMB" "ZS_RIGHTHAND")
*eventTag (0 "DEF_OPT_FRAME" "3")
*eventTag (0 "DEF_HIT_END" "19")
*eventTag (0 "DEF_WINDOW" "8 19")

*eventSFX (25 "Whoosh" EMPTY_SLOT )
}

// Parade
ani ("t_2hParade_0" 1 "" 0.0 0.0 M. "Hum_1hParadeT2_A01.asc" F 1 15)
{
*eventTag (0 "DEF_WINDOW" "0 12")
*eventSFX (2 "D_PARADE" EMPTY_SLOT )
}

ani ("t_2hParade_0_A2" 1 "" 0.0 0.0 M. "Hum_1hParadeT2_A01.asc" F 16 30)
{
*eventTag (0 "DEF_WINDOW" "0 12")
*eventSFX (18 "D_PARADE" EMPTY_SLOT )
}

ani ("t_2hParade_0_A3" 1 "" 0.0 0.0 M. "Hum_1hParadeT2_A01.asc" F 31 45)
{
*eventTag (0 "DEF_WINDOW" "0 12")
*eventSFX (33 "D_PARADE" EMPTY_SLOT )
}





// ani ("t_2hParade_U" 1 "" 0.0 0.0 M. "Hum_1hParadeT3_M01.asc" F 1 29)
// ani ("t_2hParade_L" 1 "" 0.0 0.0 M. "Hum_1hParadeT3_M01.asc" F 1 29)
// ani ("t_2hParade_R" 1 "" 0.0 0.0 M. "Hum_1hParadeT3_M01.asc" F 1 29)

ani ("t_2hParadeJumpB" 1 "" 0.0 0.0 M. "Hum_1hParadeJumpT3.asc" F 1 14)
{
*eventTag (0 "DEF_WINDOW" "0 10")
*eventSFX (2 "D_PARADE" EMPTY_SLOT )
}

//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
}
}
Chyba coś takiego. Jak masz wszystkie animki walki 1h zdekompilowane w folderze, to powinno kompilować bez problemu.
 

Codeman

Codeman

Użytkownicy
posty53
Propsy33
  • Użytkownicy

Codeman

Miecz na plecach.
#6 2011-07-15, 14:37(Ostatnia zmiana: 2011-07-15, 14:39)
Wielkiee dzięki krupam :)
A jak nazwać tego mds'a ? :D
rozumiem że go w _compiled . ;d
 

krupam

krupam

Użytkownicy
posty105
Propsy43
Profesjabrak
  • Użytkownicy
Nie wiem, nazwij go jakoś Humans_1hst2_Back, albo coś.
Potem robisz plik .mds o takiej nazwie w Anims/mds_overlay.
Potem kompilujesz Sourcerem i wrzucasz skompilowane pliki do Anims/_compiled.
I na koniec dorabiasz odpowiednie funkcje w skrypcie i powinno działać :P
 

Codeman

Codeman

Użytkownicy
posty53
Propsy33
  • Użytkownicy
popróbuje jak wrócę w Niedziele znad Jeziora :D
Wielkie dzięki krupam :D
 


0 użytkowników i 1 Gość przegląda ten wątek.
0 użytkowników
Do góry