|
Unity Мультиплатформенный инструмент для разработки игр |
10.10.2011, 20:34
|
#541
|
Бывалый
Регистрация: 26.07.2009
Сообщений: 785
Написано 362 полезных сообщений (для 995 пользователей)
|
Ответ: Фак по Юнити.
Сообщение от pax
|
Спасибо, но можно в таком случае разжевать для чайников? Не сталкивался с шейдерами до этого момента, поэтому даже не знаю в какую сторону смотреть, какой шейдер редактировать...
|
(Offline)
|
|
10.10.2011, 21:16
|
#542
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Фак по Юнити.
Скачиваешь шейдеры http://unity3d.com/support/resources...ilt-in-shaders
выбираешь нужный, добавляешь/изменяешь тег на "Queue" = "Transparent+1", это значит, что объект будет отрисован в очереди после прозрачных объектов (частицы вроде как-раз к ним относятся).
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
10.10.2011, 21:27
|
#543
|
Бывалый
Регистрация: 26.07.2009
Сообщений: 785
Написано 362 полезных сообщений (для 995 пользователей)
|
Ответ: Фак по Юнити.
Так этот шейдер вроде как будет применятся не только к нужному мне объекту, или я чего-то не понимаю?
|
(Offline)
|
|
10.10.2011, 21:29
|
#544
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Фак по Юнити.
Ты смени ему имя в заголовке шейдера - и это будет уникальный шейдер
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
11.10.2011, 09:10
|
#545
|
Бывалый
Регистрация: 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
|
Unity/C# кодер
Регистрация: 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 IN, inout SurfaceOutput o) { fixed4 c = tex2D(_MainTex, IN.uv_MainTex) * _Color; o.Albedo = c.rgb; o.Alpha = c.a; } ENDCG }
Fallback "VertexLit" }
если посмотреть шейдер Font, то найдешь там много других тегов, кроме Fog
|
(Offline)
|
|
11.10.2011, 09:16
|
#547
|
Бывалый
Регистрация: 26.07.2009
Сообщений: 785
Написано 362 полезных сообщений (для 995 пользователей)
|
Ответ: Фак по Юнити.
Если бы не пробовал, не писал бы, что не получилось
|
(Offline)
|
|
11.10.2011, 09:19
|
#548
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Фак по Юнити.
Я походу ошибся, а вы справку не читаете )
В общем там равно не нужно )
Вся информация про туман тут: http://unity3d.com/support/documenta...ts/SL-Fog.html
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
11.10.2011, 09:22
|
#549
|
Бывалый
Регистрация: 26.07.2009
Сообщений: 785
Написано 362 полезных сообщений (для 995 пользователей)
|
Ответ: Фак по Юнити.
Все работает, все замечательно. А в справку я полез, но если бы я там что-то почерпнул, я бы не обращался с помощью.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
03.11.2011, 20:13
|
#550
|
ПроЭктировщик
Регистрация: 10.05.2011
Сообщений: 104
Написано 49 полезных сообщений (для 170 пользователей)
|
Ответ: Фак по Юнити.
Никак не могу понять принцип наследования классов.Разъясните пожалуйста
|
(Offline)
|
|
03.11.2011, 20:40
|
#551
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Фак по Юнити.
В Unity или в C#?
|
(Offline)
|
|
03.11.2011, 20:57
|
#552
|
ПроЭктировщик
Регистрация: 10.05.2011
Сообщений: 104
Написано 49 полезных сообщений (для 170 пользователей)
|
Ответ: Фак по Юнити.
Желательно конечно в Unity...
|
(Offline)
|
|
03.11.2011, 21:22
|
#553
|
Unity/C# кодер
Регистрация: 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 MyClass: MonoBehaviour {
}
4. Наследование в справке отображает раздел Inherited members для каждого класса. Открыв описание класса MonoBehaviour так же можно посмотреть, какие возможности он получил от классов, наследником которых он является.
5. Еще один основной класс, который так же унаследован в от UnityEngine.Object - является GameObject, это второй основной объект Unity, который является основной составляющей сцены. Он может иметь компоненты и скрипты. Скрипты могут работать с GameObject через свойство this.gameObject
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
03.11.2011, 23:19
|
#554
|
ПроЭктировщик
Регистрация: 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 : String, value : String) { var i = new MyClass (); i.info = info; i.value = value; Add(i); } function Add (k : MyClass) { for( var i = 0; i < arr.length; i ++ ) { Add(k.info,k.value); } }
Пытаюсь переменные из первого скрипта добавить в массив во втором,но не выходит.Подскажите пожалуйста,что делаю не так?
|
(Offline)
|
|
03.11.2011, 23:25
|
#555
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Фак по Юнити.
Эм... что-то странно это дело выглядит и я на js не программирую.
Странно потому что в обоих функция Add вызывается так же функция Add - перекрестная рекурсия получается... Unity не падает?
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 05:59.
|