NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!
Avatar
Neaktivní uživatel:10.9.2017 13:07

Ahoj, googlím jak jen můžu ale žádný skript nefunguje.. Potřebuju prostě skript na pohybování s kamerou.. Abych mohl ovládat kameru pomocí WASD.

Odpovědět
10.9.2017 13:07
Neaktivní uživatelský účet
Avatar
Acerik
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
Acerik:10.9.2017 13:59

A jedná se o 2D nebo 3D?

Nahoru Odpovědět
10.9.2017 13:59
“Every programmer is an author.”
Avatar
Nahoru Odpovědět
10.9.2017 14:47
Neaktivní uživatelský účet
Avatar
Acerik
Tvůrce
Avatar
Acerik:10.9.2017 16:01

A potřebuješ aby mířila dolů a WSAD se ovládala do stran a nahoru? Tak aby se výška neměnila? Nebo chceš měnit i výšku?

Nahoru Odpovědět
10.9.2017 16:01
“Every programmer is an author.”
Avatar
Neaktivní uživatel:10.9.2017 16:22

prostě klasicky jak máš příklad Minecraft WASD + rotace myší

Nahoru Odpovědět
10.9.2017 16:22
Neaktivní uživatelský účet
Avatar
Acerik
Tvůrce
Avatar
Acerik:10.9.2017 16:28

Tak na to má Unity vlastní asset Characters a tam first person character. Pokud již máš projekt dej Assets->Import package -> Characters. A pak si to najdeš ve složkách a vložíš z Prefabs buď FPSController a nebo RigidBodyFPSCon­troller dle potřeby. FPSController obsahuje i zvuky a další vychytávky.

Nahoru Odpovědět
10.9.2017 16:28
“Every programmer is an author.”
Avatar
Martin Šlachta
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
Martin Šlachta:10.9.2017 17:22

Vše je v dokumentaci
Kamera :

public float sensitivityX = 15F;
    public float sensitivityY = 15F;

    public float minimumX = -360F;
    public float maximumX = 360F;

    public float minimumY = -60F;
    public float maximumY = 60F;

    float rotationY = 0F;
    float rotationX = 0F;

    public GameObject Player;

    void Update()
    {
        rotationX = transform.localEulerAngles.y + Input.GetAxis("Mouse X") * sensitivityX;

        rotationY += Input.GetAxis("Mouse Y") * sensitivityY;
        rotationY = Mathf.Clamp(rotationY, minimumY, maximumY);

        transform.localEulerAngles = new Vector3(-rotationY, rotationX, 0);
    }

Pohyb :

    public float speed = 6.0F;
    public float jumpSpeed = 8.0F;
    public float gravity = 20.0F;
    private Vector3 moveDirection = Vector3.zero;

void Update() {
    CharacterController controller = GetComponent<CharacterController>();
    if (controller.isGrounded) {
        moveDirection = new Vector3(Input.GetAxis("Horizontal"), 0, Input.GetAxis("Vertical"));
        moveDirection = transform.TransformDirection(moveDirection);
        moveDirection *= speed;
        if (Input.GetButton("Jump"))
            moveDirection.y = jumpSpeed;

    }
    moveDirection.y -= gravity * Time.deltaTime;
    controller.Move(moveDirection * Time.deltaTime);
}
 
Nahoru Odpovědět
10.9.2017 17:22
Avatar
dez1nd
Člen
Avatar
dez1nd:11.9.2017 13:18
if (controller.isGrounded)

Na tuhle podmínku Valve zapomíná už od CounterStrike 1.5, vždy tam hráči skáčou jak srny a ve vzduchu mění směr jak nafouknutá a prasknutá šprcka za letu.

 
Nahoru Odpovědět
11.9.2017 13:18
Avatar
Odpovídá na Martin Šlachta
Neaktivní uživatel:15.9.2017 9:34

to asi není ono..
Potřebuju něco takového:
https://www.youtube.com/watch?…

Nahoru Odpovědět
15.9.2017 9:34
Neaktivní uživatelský účet
Avatar
Martin Šlachta
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
Martin Šlachta:15.9.2017 19:01

Však to je přesně ono :-| . Jen si to musíš upravit, to snad zvládneš, ne? ;-)

Editováno 15.9.2017 19:04
 
Nahoru Odpovědět
15.9.2017 19:01
Avatar
dez1nd
Člen
Avatar
Odpovídá na Martin Šlachta
dez1nd:18.9.2017 8:48

a jestli ne tak šup šup na nějakej tutorial

 
Nahoru Odpovědět
18.9.2017 8:48
Avatar
Neaktivní uživatel:18.9.2017 11:28

Mám tento kód
ale nefunguje nebo neumím mačkat šipky ale do debug konzole to píše 3 nebo 4 takže mačkám dobře

if (Input.GetKey(KeyCode.RightArrow))
{
    Debug.Log("3");
    this.speed2 = 0.4f;
    this.MainCamera.transform.RotateAround(this.MainCamera.transform.position, Vector3.up, Input.GetAxis("Horizontal") * this.speed2);
}
if (Input.GetKey(KeyCode.LeftArrow))
{
    Debug.Log("4");
    this.speed2 = -0.4f;
    this.MainCamera.transform.RotateAround(this.MainCamera.transform.position, Vector3.up, Input.GetAxis("Horizontal") * -this.speed2);
}
Editováno 18.9.2017 11:30
Nahoru Odpovědět
18.9.2017 11:28
Neaktivní uživatelský účet
Avatar
dez1nd
Člen
Avatar
Odpovídá na Neaktivní uživatel
dez1nd:18.9.2017 13:33

Máš to v metodě Update() ??
BTW: chtěl jsi ovládání kamery ne? proč tam máš .RotateAround ?

Editováno 18.9.2017 13:34
 
Nahoru Odpovědět
18.9.2017 13:33
Avatar
Odpovídá na dez1nd
Neaktivní uživatel:18.9.2017 13:43

No mám trochu jinak ty skripty.. pohyb s kamerou rovně a dozadu funguje ale právě teď musím vyřešit pohyb s kamerou a teď si vlastně uvědomuju, že když budu mít rotaci doprava a doleva nebudu moci pohybovat kamerou nahoru..

Jinak mám to v metodě Update

Nahoru Odpovědět
18.9.2017 13:43
Neaktivní uživatelský účet
Avatar
Neaktivní uživatel:18.9.2017 13:45

Aha už mi to funguje.. Ale teď mám problém s létáním nahoru a dolů a doprava a doleva

Editováno 18.9.2017 13:46
Nahoru Odpovědět
18.9.2017 13:45
Neaktivní uživatelský účet
Avatar
dez1nd
Člen
Avatar
Odpovídá na Neaktivní uživatel
dez1nd:18.9.2017 13:46

pohyb s kamerou rovně a dozadu funguje ale právě teď musím vyřešit pohyb s kamerou a teď si vlastně uvědomuju, že když budu mít rotaci doprava a doleva nebudu moci pohybovat kamerou nahoru

?? tak tohle nechápu :) asi už jsem přepracovaný,

 
Nahoru Odpovědět
18.9.2017 13:46
Avatar
Odpovídá na dez1nd
Neaktivní uživatel:18.9.2017 13:47

Jestli chceš můžu ti to ukázat přes teamviewer či skype.. Co je špatně..
skype: tomasekpro

Nahoru Odpovědět
18.9.2017 13:47
Neaktivní uživatelský účet
Avatar
dez1nd
Člen
Avatar
Odpovídá na Neaktivní uživatel
dez1nd:19.9.2017 6:04

musíš tedy počkat do odpoledne, cca do 5ti, snad na to nezapomenu :)

 
Nahoru Odpovědět
19.9.2017 6:04
Avatar
Odpovídá na dez1nd
Neaktivní uživatel:19.9.2017 17:23

Ok tak si mě pak přidej

Nahoru Odpovědět
19.9.2017 17:23
Neaktivní uživatelský účet
Avatar
dez1nd
Člen
Avatar
Odpovídá na Neaktivní uživatel
dez1nd:25.9.2017 6:38

Už jsi na to přišel ?

 
Nahoru Odpovědět
25.9.2017 6:38
Avatar
Odpovídá na dez1nd
Neaktivní uživatel:25.9.2017 21:15

Už se zas dělám něco jinýho :D

Nahoru Odpovědět
25.9.2017 21:15
Neaktivní uživatelský účet
Avatar
dez1nd
Člen
Avatar
dez1nd:26.9.2017 13:56

Mě by spíš zajímalo jestli se dá Blend Tree s animacema upravit tak, aby nohy postavy stály na místě a otočili se cca o 45° až ve chvílí kdy se kamera otočí o 45° a více. Chci docílit efektu jako je v CounterStrike GO, kde postava stojí na místě a pohybuje se jen horní část těla, ve chvíli když se vršek otočí moc, nohy ho jakoby doběhnou na stejný úhel.. Ale asi to budu muset řešit jinak než přes blend tree a budu muset využít rozdělení modelu na upper a lower části.

Editováno 26.9.2017 13:56
 
Nahoru Odpovědět
26.9.2017 13:56
Avatar
Odpovídá na dez1nd
Garrom Orc Shaman:27.9.2017 13:40

Haha :-) Nejvtipnější na tom je že to je pravda. Ale šprcka za letu ? Koho tohle může napadnout. Ještě vtipnější než že je to pravda je že je to velice trefné.

Nahoru Odpovědět
27.9.2017 13:40
Life for Code, Code for Life. I chose my path, I should stick on it.
Avatar
dez1nd
Člen
Avatar
Odpovídá na Garrom Orc Shaman
dez1nd:3.10.2017 13:28

Zrovna nedávno jsem hrál kompetetivní zápas s přateli a když jsem vyběhl do jedné uličky tak jedna čubka vyskočila (bunnyhop) a letěla cca 3 herní metry a měnila směr a rotaci doslova jako ta šprcka, ale nakonec jsem ji udolal. No co dodat, přešel jsem z CSGO na Escape From Tarkov, které se drží reality a žádní levitující nepřátelé tam nejsou :D

 
Nahoru Odpovědět
3.10.2017 13:28
Avatar
dez1nd
Člen
Avatar
Odpovídá na Garrom Orc Shaman
dez1nd:3.10.2017 13:32

Bohužel to není jediná věc která je v CSku odfláknutá.
další věccí je pozice FPS kamery vůči postavě kterou vidí ostatní hráči.
Doslova je kamera pozicovaná ne na úrovni očí ale doslova na hlavě (jako položená) takže když se někdo schová za překážku celej tak ty mu vidíš jen kousíček hlavy (kdyby to byl žid, viděl by jsi jen jarmulku), ale on tě vidí celého a v klidu po tobě střílí.
A o synchronizaci colliderů na postavách nebo synchronizaci ragdollu postav ani nemluvím :)

Editováno 3.10.2017 13:32
 
Nahoru Odpovědět
3.10.2017 13:32
Avatar
Odpovídá na dez1nd
Garrom Orc Shaman:4.10.2017 14:14

To je přesně důvod proč (téměř chronicky) nenávidím MMO nebo MOBA. Kvůli neustálím aktualizacím obecně odflakují beta-testing a vydají aktualizace plné chyb. Například vývojáři Team Fortress 2 veřejně přiznaly že v každé verzi mají značné množství úmyslných bugů, Argumentovaly to tím že to musí dělat jinak by nemusely dělat další verze a přišly by o práce (osobně si myslím že je to blbost. Projektů bude vždy dost). League of legends a DOTA jsou na tom úplně stejně. Co se týče FPS tak online multiplayer moc nemusím... Z bezpečnostního hlediska mně znepokojuje že ve svém počítači vidím někoho koho neznám, někoho kdo mi klidně může prohrabávat složky mezitím co hrajeme. Na druhou stranu LAN se mi zdá v pořádku jelikož si do sítě nepustíš někoho koho neznáš. Kromě toho FPS bývají velice nevyvážená, všude moc granátometů.

Editováno 4.10.2017 14:14
Nahoru Odpovědět
4.10.2017 14:14
Life for Code, Code for Life. I chose my path, I should stick on it.
Avatar
Luboš Běhounek Satik:4.10.2017 14:33

Například vývojáři Team Fortress 2 veřejně přiznaly že v každé verzi mají značné množství úmyslných bugů, Argumentovaly to tím že to musí dělat jinak by nemusely dělat další verze a přišly by o práce

Zdroj?
Zní to jako čistej HOAX :)

Co se týče FPS tak online multiplayer moc nemusím... Z bezpečnostního hlediska mně znepokojuje že ve svém počítači vidím někoho koho neznám, někoho kdo mi klidně může prohrabávat složky mezitím co hrajeme.

Uh, cože? Tohle jsem vůbec nepochopil

Editováno 4.10.2017 14:34
Nahoru Odpovědět
4.10.2017 14:33
https://www.facebook.com/peasantsandcastles/
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.

Zobrazeno 27 zpráv z 27.