Hodnocení tématu:
  • 2 Hlas(ů) - 5 Průměr
  • 1
  • 2
  • 3
  • 4
  • 5
Tým na tvorbu pc her
Jak jsem slíbil, tak jsem začal pracovat na komplet novém menu. O tom jak to dopadlo se přesvědčte sami Pinkiesmile
menu je asi ze 70% hotové.

[Obrázek: prev_HLmenu.png]
[Obrázek: prev_HLmenuNastavení.png]

Můžete si ho odzkoušet ZDE (Win, 7MB, *.rar)
Odpovědět
<rejppost> Wow... koukam, ze ste s tim za pul roku pekne hnuli. Mate hotovy menu. Vec co se dela jako posledni Rainbowlaugh </rejppost>
Odpovědět
Super, koukám že si přidal i další nastav. grafiky... to pozadí je už tvoje?
@jadus: menu se nedělá vždy jako poslední - nakonec se většinou už jen dolaďuje.
Ne vždy je možnost zdánlivě nejlepší možností nejlepší.
Odpovědět
No, sorry že jsem tu nebyl, ale mám novej komp. Taky jsem začal pracovat v cinemě 4D. Kdybys chtěl pomoct, tak napiš Ajsmug
You are loved!
YouTube
Moje hudební vlákno
SoundCloud archiv
Discord: atakke

Moc sem nechodím, ale na Discordu vždy odpovím Twilightsmile

"Music is everybody's possession. It's only publishers who think that people own it." - John Lennon
Odpovědět
Myslím, že zvládnem, ale dík Ajsmug.
You are loved!
YouTube
Moje hudební vlákno
SoundCloud archiv
Discord: atakke

Moc sem nechodím, ale na Discordu vždy odpovím Twilightsmile

"Music is everybody's possession. It's only publishers who think that people own it." - John Lennon
Odpovědět
Jeden moudrý ircčkař řekl: Na klávesnici se má sáhnout, až když už není co vymýšlet. -- IzV

Zatím to vypadá tak, že si s tím Unity jen tak bezmyšlenkovitě hrajete. Unity je totiž prostředí, ve kterém se dá hratelný prototyp naprasit za dve odpoledne.

Fakt nechci vypadat jako rejpal, ale nemyslim si, že Unity je ta správná cesta.
Odpovědět
Já jsem sice engine nevybíral, ale myslím si, že hoši špatnou cestou nejdou - je zdarma, je multiplatformní, nemá špatný skriptovací jazyk a není složitý, takže pokud nejdou dělat vyloženě obří projekt (což zatím nevypadá), tak si myslím, že unity není špatnou volbou.
Ne vždy je možnost zdánlivě nejlepší možností nejlepší.
Odpovědět
Mno víš, tohle zatím NENÍ nápad, je to jen základ. Když někoho něco napadne, nemusí začínat od začátku, protože má hotovou hratelnou základní verzi a jen si ji přizpůsobí. Btw: tím jsem nemyslel to, že teď potřebujeme nápad.
You are loved!
YouTube
Moje hudební vlákno
SoundCloud archiv
Discord: atakke

Moc sem nechodím, ale na Discordu vždy odpovím Twilightsmile

"Music is everybody's possession. It's only publishers who think that people own it." - John Lennon
Odpovědět
(30.08.2013, 10:16)jadus Napsal(a): <rejppost> Wow... koukam, ze ste s tim za pul roku pekne hnuli. Mate hotovy menu. Vec co se dela jako posledni Rainbowlaugh </rejppost>
U mě by to byl problém Rainbowlaugh menu mám spojené s hrou (pomocí některých scriptů, snažím se aby byl kód co nejkratší), bez něj by mi nefungoval zbytek. Navíc, když už jsem měl nápad jak ho udělat, tak jsem ho udělal Pinkiehappy

(30.08.2013, 21:42)damixk Napsal(a): Pokud by byla potřeba vytvořit scénu/terén v unity rád pomůžu :3
Budu rád když pomůžeš, jen vydrž než dokončím všechny věci co se tam budou objevovat. Zatím jsem se s tím piplal jen něco okol 10h (vždy od 8 večer do 1 ráno Rainbowlaugh). Pokusím se udělat testovací level se všemi prvky ve hře, které se budou dát použít.

(30.08.2013, 21:30)Slugma Napsal(a): Super, koukám že si přidal i další nastav. grafiky... to pozadí je už tvoje?
Yup, moje.

(30.08.2013, 21:37)DjAtakke585 Napsal(a): No, sorry že jsem tu nebyl, ale mám novej komp. Taky jsem začal pracovat v cinemě 4D. Kdybys chtěl pomoct, tak napiš Ajsmug
Oki, budu potřebovat udělat modely prostředí (stromy, keře, atd.. ve stylu džungle a EverFree)

btw.: Co jsem za včerejšek stihnul:

Přepsal jsem Player.cs do JS (líp se stím pracuje a můžu si dovolit ho vylepšit). Tu je nová verze.
Kód:
static var onGround = false;
private var regenTime : int = 1;
private var useSta = 0.0;
private var moveSpeedTemp : int;
private var usedStamina : int;
var moveSpeed : int;
var turnSpeed : int;
var runSpeed : int;
var jumpForce : int;

function FixedUpdate(){
if(Input.GetKey(KeyCode.LeftShift) && healthStamina_status.stamina > 5 && Input.GetKey("w"))
  {moveSpeedTemp = runSpeed;usedStamina = 5;useStamina();} else {moveSpeedTemp = moveSpeed;}

var h : float = Input.GetAxis("Horizontal");
var v : float = Input.GetAxis("Vertical");

transform.Rotate( 0, h * turnSpeed * Time.deltaTime, 0 );
var moveAmount : Vector3 = transform.forward * v * moveSpeedTemp;
rigidbody.MovePosition( transform.position + moveAmount * Time.deltaTime );
rigidbody.velocity = moveAmount + Vector3.Scale(rigidbody.velocity, new Vector3(0,1,0));    

if (onGround && healthStamina_status.stamina > 10 && Input.GetKey(KeyCode.Space))
{
  usedStamina = 10;useStamina();
  rigidbody.AddForce( transform.up * jumpForce, ForceMode.Impulse );    
  onGround = false;
}
}

function OnCollisionEnter(collision : Collision){
onGround = true;
}

function useStamina(){
  if(Time.time > useSta){
   useSta = Time.time + regenTime;
   healthStamina_status.stamina = healthStamina_status.stamina - usedStamina;
  }
}
Nově zvládne:
- běh
- počítá výdrž (běh -5/s, -10/skok)

Dokončil základní HUD (jen po funkční stránce, kdyby měl někdo návrh na vzhled, tak do toho)
[Obrázek: prev_HUD_31813.png]

Nový script, který udržuje informace o životě a výdrži (není ve finální podobě):
Kód:
static var health : int = 100;
static var stamina : int = 100;
private var number : int;
private var regen = 0.0;
private var addSta = 0.0;
var lifeBar = true;

function Update(){
if(lifeBar==true)
{
  number = health;
} else {
  number = stamina;
  regenStamina();
}
if(number > 100) number = 100;
if(number < 0) number = 0;

transform.localPosition.x = (number * 0.005) - 0.54;
}

function regenStamina(){
if(Input.GetKey(KeyCode.LeftShift) && Input.GetKey("w") || Input.GetKey(KeyCode.Space)){
return;} else {
  if(Time.time > regen){
  if(Input.GetKey("w")) {addSta = 0.5;} else {addSta = 0.17;}
  regen = Time.time + addSta;
   if(stamina < 100) stamina ++;
  }
}
}

Opravený a vylepšený script Options.js
Kód:
static var setVolume=100;
static var aaStatus:int;

class QualityButtons{
var Up=false;
var Down=false;
}
class VerticalSynchronization{
var On=false;
var Off=false;
}
class VolumeButtons{
var Up=false;
var Down=false;
}
class AntiAliasingOptions{
var AAup = false;
var AAdown = false;
}
class AnisotropicFilteringOptions{
var AFon = false;
var AFoff = false;
}

var quality : QualityButtons = QualityButtons();
var volume : VolumeButtons = VolumeButtons();
var aa : AntiAliasingOptions = AntiAliasingOptions();
var af : AnisotropicFilteringOptions = AnisotropicFilteringOptions();
var vSync : VerticalSynchronization = VerticalSynchronization();

function OnMouseUp() {
PlayerPrefs.Save();
PlayerPrefs.SetInt("setVolume",setVolume);
if(quality.Up==true){QualitySettings.IncreaseLevel(true);aaFix();}
if(quality.Down==true){QualitySettings.DecreaseLevel(true);aaFix();}
if(vSync.On==true){QualitySettings.vSyncCount = 1;PlayerPrefs.SetInt("vSync",1);}
if(vSync.Off==true){QualitySettings.vSyncCount = 0;PlayerPrefs.SetInt("vSync",0);}
if(volume.Down==true){setVolume --;}
if(volume.Up==true){setVolume ++;}
if(aa.AAup==true){if(aaStatus >= 4) {aaStatus = 4;} else {aaStatus ++;}}
if(aa.AAdown==true){if(aaStatus <= 1){ aaStatus = 1;} else {aaStatus --;}}
if(af.AFon==true){PlayerPrefs.SetInt("afStatus",1);QualitySettings.anisotropicFiltering = AnisotropicFiltering.Enable;}
if(af.AFoff==true){PlayerPrefs.SetInt("afStatus",0);QualitySettings.anisotropicFiltering = AnisotropicFiltering.Disable;}
}

function aaFix(){
if(QualitySettings.GetQualityLevel() == 0) {aaStatus=1;}
if(QualitySettings.GetQualityLevel() == 1) {aaStatus=1;}
if(QualitySettings.GetQualityLevel() == 2) {aaStatus=1;}
if(QualitySettings.GetQualityLevel() == 3) {aaStatus=2;}
if(QualitySettings.GetQualityLevel() == 4) {aaStatus=3;}
if(QualitySettings.GetQualityLevel() == 5) {aaStatus=4;}
}

function Update(){
PlayerPrefs.SetInt("aaSet", aaStatus);

if(QualitySettings.anisotropicFiltering == AnisotropicFiltering.Enable) {PlayerPrefs.SetInt("afStatus", 1);}
else {PlayerPrefs.SetInt("afStatus", 0);}

AudioListener.volume = setVolume/1000;
if(setVolume > 100) setVolume = 100;
if(setVolume < 0) setVolume = 0;
if(aaStatus == 1) QualitySettings.antiAliasing = 0;
if(aaStatus == 2) QualitySettings.antiAliasing = 2;
if(aaStatus == 3) QualitySettings.antiAliasing = 4;
if(aaStatus == 4) QualitySettings.antiAliasing = 8;
}

function Start(){
setVolume = PlayerPrefs.GetInt("setVolume");
QualitySettings.SetQualityLevel (PlayerPrefs.GetInt("qLevel"), true);
QualitySettings.vSyncCount = PlayerPrefs.GetInt("vSync");
aaStatus = PlayerPrefs.GetInt("aaSet");
if(PlayerPrefs.GetInt("afStatus")==1) {QualitySettings.anisotropicFiltering = AnisotropicFiltering.Enable;}
else {QualitySettings.anisotropicFiltering = AnisotropicFiltering.Disable;}
}

DK: Díky, až dokončím základ, tak uložím jeho kopii bokem, aby ho mohly použít i ostatní dle libosti.

A co mám teď v plánu:
1. Upravit model hráče (přidat mu kostru, aby se mohlo začít s animací)
2. Dokončit textury modelu
3. Opravit trigger_hurt.js

Není toho moc, ale na dalších 5h práce mi to bohatě vystačí.
To je odemě zatím vše. Nemůžu tu být pořád (nejsem doma, vrátím se až v úterý), takže pokud něco potřebujete přímo ode mě, napiště mi PM a až se dostanu na net, tak vám odpovím.
Odpovědět
D.K. mam tě napsat do "výpomoc" ? Twilightsmile
Odpovědět


Přejít na fórum:


Uživatel(é) prohlížející tohle téma: 1 host(ů)