Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Unity

Unity Мультиплатформенный инструмент для разработки игр

Ответ
 
Опции темы
Старый 10.10.2011, 20:34   #541
Andvrok
Бывалый
 
Регистрация: 26.07.2009
Сообщений: 785
Написано 362 полезных сообщений
(для 995 пользователей)
Ответ: Фак по Юнити.

Сообщение от pax Посмотреть сообщение
Если будут партиклы, то объект стоит отрисовать после них. Это можно установить в шейдере указав очередь прорисовки через тег Queue
http://unity3d.com/support/documenta...haderTags.html
Спасибо, но можно в таком случае разжевать для чайников? Не сталкивался с шейдерами до этого момента, поэтому даже не знаю в какую сторону смотреть, какой шейдер редактировать...
(Offline)
 
Ответить с цитированием
Старый 10.10.2011, 21:16   #542
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Фак по Юнити.

Скачиваешь шейдеры http://unity3d.com/support/resources...ilt-in-shaders
выбираешь нужный, добавляешь/изменяешь тег на "Queue" = "Transparent+1", это значит, что объект будет отрисован в очереди после прозрачных объектов (частицы вроде как-раз к ним относятся).
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Andvrok (10.10.2011)
Старый 10.10.2011, 21:27   #543
Andvrok
Бывалый
 
Регистрация: 26.07.2009
Сообщений: 785
Написано 362 полезных сообщений
(для 995 пользователей)
Ответ: Фак по Юнити.

Так этот шейдер вроде как будет применятся не только к нужному мне объекту, или я чего-то не понимаю?
(Offline)
 
Ответить с цитированием
Старый 10.10.2011, 21:29   #544
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Фак по Юнити.

Ты смени ему имя в заголовке шейдера - и это будет уникальный шейдер
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Andvrok (10.10.2011)
Старый 11.10.2011, 09:10   #545
Andvrok
Бывалый
 
Регистрация: 26.07.2009
Сообщений: 785
Написано 362 полезных сообщений
(для 995 пользователей)
Ответ: Фак по Юнити.

Еще один ламерский вопрос:
Вот взял я стандартный Diffuse:
Shader "RandomShader" {
Properties {
	_Color ("Main Color", Color) = (1,1,1,1)
	_MainTex ("Base (RGB)", 2D) = "white" {}
}
SubShader {
	Tags { "RenderType"="Opaque" }
	LOD 200

CGPROGRAM
#pragma surface surf Lambert

sampler2D _MainTex;
fixed4 _Color;

struct Input {
	float2 uv_MainTex;
};

void surf (Input IN, inout SurfaceOutput o) {
	fixed4 c = tex2D(_MainTex, IN.uv_MainTex) * _Color;
	o.Albedo = c.rgb;
	o.Alpha = c.a;
}
ENDCG
}

Fallback "VertexLit"
}
И куда мне здесь воткнуть Fog {Mode = Off}?
Пробовал гуглить, ничего не вышло
(Offline)
 
Ответить с цитированием
Старый 11.10.2011, 09:12   #546
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Фак по Юнити.

Примерно сюда:
Shader "RandomShader" {
Properties {
    
_Color ("Main Color"Color) = (1,1,1,1)
    
_MainTex ("Base (RGB)"2D) = "white" {}
}
SubShader {
    
Tags "RenderType"="Opaque" }
    
Fog {Mode Off}
    
LOD 200

CGPROGRAM
#pragma surface surf Lambert

sampler2D _MainTex;
fixed4 _Color;

struct Input {
    
float2 uv_MainTex;
};

void surf (Input INinout SurfaceOutput o) {
    
fixed4 c tex2D(_MainTexIN.uv_MainTex) * _Color;
    
o.Albedo c.rgb;
    
o.Alpha c.a;
}
ENDCG
}

Fallback "VertexLit"

если посмотреть шейдер Font, то найдешь там много других тегов, кроме Fog
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 11.10.2011, 09:16   #547
Andvrok
Бывалый
 
Регистрация: 26.07.2009
Сообщений: 785
Написано 362 полезных сообщений
(для 995 пользователей)
Ответ: Фак по Юнити.


Если бы не пробовал, не писал бы, что не получилось
(Offline)
 
Ответить с цитированием
Старый 11.10.2011, 09:19   #548
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Фак по Юнити.

Я походу ошибся, а вы справку не читаете )
В общем там равно не нужно )

Вся информация про туман тут: http://unity3d.com/support/documenta...ts/SL-Fog.html
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Andvrok (11.10.2011)
Старый 11.10.2011, 09:22   #549
Andvrok
Бывалый
 
Регистрация: 26.07.2009
Сообщений: 785
Написано 362 полезных сообщений
(для 995 пользователей)
Ответ: Фак по Юнити.

Все работает, все замечательно. А в справку я полез, но если бы я там что-то почерпнул, я бы не обращался с помощью.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
pax (11.10.2011)
Старый 03.11.2011, 20:13   #550
Lowlet
ПроЭктировщик
 
Регистрация: 10.05.2011
Сообщений: 104
Написано 49 полезных сообщений
(для 170 пользователей)
Ответ: Фак по Юнити.

Никак не могу понять принцип наследования классов.Разъясните пожалуйста
(Offline)
 
Ответить с цитированием
Старый 03.11.2011, 20:40   #551
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Фак по Юнити.

В Unity или в C#?
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 03.11.2011, 20:57   #552
Lowlet
ПроЭктировщик
 
Регистрация: 10.05.2011
Сообщений: 104
Написано 49 полезных сообщений
(для 170 пользователей)
Ответ: Фак по Юнити.

Желательно конечно в Unity...
(Offline)
 
Ответить с цитированием
Старый 03.11.2011, 21:22   #553
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Фак по Юнити.

Относительно Unity все просто:
1. Основное наследование идет от UnityEngine.Object (рассматриваем иерархию классов в справке http://unity3d.com/support/documenta...hierarchy.html ) Этот объект дает основным объектом игрового мира (текстуры, модели, скрипты, материалы, шейдеры, компоненты) возможность иметь имя, возможность быть выгруженными из памяти (Destroy), а так же возможность поиска игровых объектов по типу.
2. От него наследуются все объекты, которые в той или иной степени являются ресурсами. Как я уже писал - это материалы, модели, шейдеры, текстуры, скрипты, компоненты и т.д.
3. От него же наследуется в конечном итоге и класс MonoBehaviour, который является основой скриптов в Unity. Он содержит основные методы для работы с компонентами объекта, на который устанавливается скрипт, получает от игрового движка сообщения, которые можно обрабатывать. Информацию о сообщениях можно получить здесь: http://unity3d.com/support/documenta...Behaviour.html
На js наследование скрипта от MonoBehaviour выполняется не явно, т.к. класс генерируется по имени файла. В C# наследование выполнено явно и по умолчанию при создании скрипта создается класс - наследник MonoBehaviour
using UnityEngine;

public class 
MyClassMonoBehaviour 
{


4. Наследование в справке отображает раздел Inherited members для каждого класса. Открыв описание класса MonoBehaviour так же можно посмотреть, какие возможности он получил от классов, наследником которых он является.
5. Еще один основной класс, который так же унаследован в от UnityEngine.Object - является GameObject, это второй основной объект Unity, который является основной составляющей сцены. Он может иметь компоненты и скрипты. Скрипты могут работать с GameObject через свойство this.gameObject
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Lowlet (04.11.2011)
Старый 03.11.2011, 23:19   #554
Lowlet
ПроЭктировщик
 
Регистрация: 10.05.2011
Сообщений: 104
Написано 49 полезных сообщений
(для 170 пользователей)
Вопрос Ответ: Фак по Юнити.

PAX,спасибо за ответ.Еще вопрос:есть скрипт c названием proba_2
public var info String;
public var 
value String;

function 
OnGUI ()
{
   var 
plr gameObject.Find("Player");
   var 
inv plr.GetComponent(proba_1);
   
   if (
GUI.Button(Rect(0,0,100,100),"Запилить"))
   {
      
inv.Add(info,value);
   }

a также с названием proba_1 :
var arr String[];

class 
MyClass
{
var 
info String;
var 
value String;
}

function 
Add(info Stringvalue String)
{
   var 
= new MyClass ();
   
i.info info;
   
i.value value;
   
Add(i);
}

function 
Add (MyClass)
{
   for( var 
0arr.length++ )
   {
      
Add(k.info,k.value);
   }

Пытаюсь переменные из первого скрипта добавить в массив во втором,но не выходит.Подскажите пожалуйста,что делаю не так?
(Offline)
 
Ответить с цитированием
Старый 03.11.2011, 23:25   #555
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Фак по Юнити.

Эм... что-то странно это дело выглядит и я на js не программирую.
Странно потому что в обоих функция Add вызывается так же функция Add - перекрестная рекурсия получается... Unity не падает?
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 05:59.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com