forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Blitz3D (http://forum.boolean.name/forumdisplay.php?f=45)
-   -   Смена для и ночи! (http://forum.boolean.name/showthread.php?t=13635)

Mr.Death 03.11.2010 12:14

Смена для и ночи!
 
Как ее сделать!? Я не могу понять......

DeeJex 03.11.2010 12:47

Ответ: Смена для и ночи!
 
Вот тебе из одного моего недоделаного проджекта:
Делаешь сферу(небо):
Код:

Global skysph=CreateSphere(8)
FlipMesh skysph
EntityOrder skysph,3

Солнце:
Код:

Global sunmesh = CreateSphere(8,skysph)
EntityOrder sunmesh,3
ScaleEntity sunmesh,.05,.05,.05
Global sunlight = CreateLight(2,sunmesh)
PositionEntity sunmesh,0,.9,0
EntityColor sunmesh,255,255,0

Время:
Код:

Global hournow# ;От 0 до 24
Обновление:
Код:

Function UpdateSky()

hournow = hournow + .001

If hournow>24 Then hournow=hournow-24
If hournow<0 Then hournow=hournow+24

PositionEntity skysph,EntityX(cam),EntityY(cam),EntityZ(cam)

RotateEntity skysph,hournow*(360/24)+180-45,0,0

If hournow>0 And hournow<7 Then EntityColor skysph,0,0,50 : LightColor sunlight,0,0,0
If hournow>7 And hournow<8 Then EntityColor skysph,0+250*(hournow-7),0+220*(hournow-7),50+50*(hournow-7) : LightColor sunlight,.35*(hournow-7),.35*(hournow-7),.35*(hournow-7) ; 0,0,50 to 250,220,100
If hournow>8 And hournow<10 Then EntityColor skysph,250-100*(hournow*.5-4),220+35*(hournow*.5-4),100+155*(hournow*.5-4) : LightColor sunlight,.35-.2*(hournow*.5-4),.35-.2*(hournow*.5-4),.35-.2*(hournow*.5-4) ; 250,220,100 to 150,255,255
If hournow>10 And hournow<19 Then EntityColor skysph,150,255,255 : LightColor sunlight,.15,.15,.15
If hournow>19 And hournow<21 Then EntityColor skysph,150+120*(hournow/3-6.25),255-45*(hournow/3-6.25),255-195*(hournow/3-6.25) : LightColor sunlight,.15-.135*(hournow/3-6.25),.15-.135*(hournow/3-6.25),.15-.135*(hournow/3-6.25) ;150,255,255 to 250,220,100
If hournow>21 And hournow<24 Then EntityColor skysph,250-250*(hournow/3-7),220-220*(hournow/3-7),100-50*(hournow/3-7) : LightColor sunlight,.05-.05*(hournow/3-7),.05-.05*(hournow/3-7),.05-.05*(hournow/3-7) ;250,220,100 to 0,0,50

End Function


ABTOMAT 03.11.2010 13:42

Ответ: Смена для и ночи!
 
Автор, а у тебя сейчас в игре день или ночь?

LynX 03.11.2010 13:53

Ответ: Смена для и ночи!
 
DeeJex, если честно как бэ не видно что день сменяется ночью... я видел у m_512 в проекте RUST. Там очень динамично все сменяется.

ARA 03.11.2010 13:57

Ответ: Смена для и ночи!
 
Цитата:

Сообщение от Mr.Death (Сообщение 166874)
Как ее сделать!? Я не могу понять......

Отрендерить лайтмапы дня, ночи, утра, вечера и периодически их менять вместе с цветом неба/кубомапой. В Ведьмаке можешь такой способ пронаблюдать.
По другому на бляце никак.

moka 03.11.2010 13:58

Ответ: Смена для и ночи!
 
Там на шейдерах было сделано, используя "Atmosphere" шейдер, который визуализирует на сферу небо и меняет цвет в зависимости от времени дня.
Там очень не хватает звёзд конечно, но там да, неплохо чуствовалось, хотя было очень не настроено..

Чтобы ответить на свой же вопрос. Ответь на вопросы, которые исходят из твоего:
1. что такое день и ночь?
2. что влияет на смену дня/ночи?
3. как визуально отличаются они?

DeeJex -1 тебе, за готовый код ему. Т.к. он не учиться таким вот методом тогда..

LynX 03.11.2010 13:59

Ответ: Смена для и ночи!
 
ARENSHI, почему не как!? Посмотри проект RUST там все динамично...
Чуть не забыл, там есть пример только на BlitzMax. Блин только сообщение ввел, отправил и уже есть сообщение от MoKa :)

ARA 03.11.2010 14:00

Ответ: Смена для и ночи!
 
Цитата:

Сообщение от PraX (Сообщение 166885)
ARENSHI, почему не как!? Посмотри проект RUST

Потому что последняя версия раста была не на бляце. А на шейдерах Хорса

moka 03.11.2010 14:01

Ответ: Смена для и ночи!
 
Цитата:

Сообщение от ARENSHI (Сообщение 166886)
Потому что последняя версия раста была не на бляце. А на шейдерах Хорса

Не на шейдерах ксорса, а имела свои шейдеры. (шейдер не может пренадлежать к движку или инструменту) ;)
А для использования шейдеров, т.к. это фича dx9+, то использовался Xors3D под BlitzMax

ARA 03.11.2010 14:02

Ответ: Смена для и ночи!
 
Цитата:

Сообщение от MoKa (Сообщение 166887)

Не на шейдерах ксорса, а имела свои шейдеры. (шейдер не пренадлежит к движку или инструменту) ;)

Ну ты же понимаешь что я это понимаю. Я сказал обобщённо и сокращённо ;) Нутыпонел.


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

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot