Logo    
Продукты, технологии Проекты, внедрения Новости мира IT Форумы Курилка Новые публикации Учебный центр
CitForum    CITForum на CD Море(!) аналитической информации! :: CITFORUM.RU   
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware HOWTO

23.05.2004

Google
WWW CITForum.ru

Новости мира IT:


21.05 - Колонка Айдара Богданова: информационная безопасность на президентском уровне
  • 21.05 - Путин подписал указ о создании нового Министерства информационных технологий и связи РФ во главе с Рейманом
  • 21.05 - Региональные GSM-операторы нашли способ конкурентной борьбы с гигантами рынка
  • 21.05 - Новая цифровая 5-ти мегапиксельная фотокамера для российских пользователей
  • 21.05 - Apple разделяется
  • 21.05 - Домашний ПК с экстремальными возможностями
  • 21.05 - Червь Lovegate научился отвечать на письма
  • 21.05 - Microsoft объявила об альянсе с Oracle
  • 21.05 - Компания «Никита» — лучший партнер ОАО «ВымпелКом».
  • 21.05 - Компания «Никита» — лучший партнер ОАО «ВымпелКом».
  • 21.05 - Panda Software предупреждает о появлении двух новых версий червя Bobax
  • 21.05 - Группа компаний «Формоза» открывает свой двухсотый магазин
  • 21.05 - IBS Поставила сервер IBM REGATA в Центральный Банк РФ
  • 21.05 - CSBI получает западные инвестиции
  • 21.05 - Коробочный Mandrakelinux - впервые в России
  • 21.05 - Wi-Fi инициатива IBM, Intel и AT&T провалилась
  • 21.05 - CTR в почте растет
  • 21.05 - Российский рынок ИТ: +20,3%
  • 21.05 - Краснодарский край уже год торгует в интернете
  • 21.05 - INTEL вдвое увеличит штат своих российских сотрудников, занимающихся исследованиями и разработками
  • 21.05 - Компания «Голден Лайн» подключила к корпоративной сети «Копейка» 50-й магазин
  • 20.05 - IBM открыла европейский центр вычислений на заказ
  • 20.05 - Google случайно увеличила емкость почтовых ящиков до терабайта
  • 20.05 - Путин подписал антихакерский указ
  • 20.05 - Подробности о процессоре VIA Esther
  • 20.05 - Google вынашивает тайные планы
  • 20.05 - Microsoft представил русскую версию Visual Basic .NET 2003
  • 20.05 - Учебный центр DIAMOND Communications становится авторизованным центром обучения Cisco Systems
  • 20.05 - Вимком на выставке «Связь-Экспокомм’2004»
  • 20.05 - Инлайн представляет кулер нового поколения
  • 20.05 - Впервые в России: уникальный программно-аппаратный комплекс от СТИНС КОМАН и «ФОРС- Центр разработки»
  • 19.05 - Вышла версия 5.0.6. системы контент-менеджмента OpenCMS, соответствующая международному стандарту WAI
  • 19.05 - Apple хочет запатентовать прозрачные окна
  • 19.05 - Очередной альтернативный офисный пакет
  • 19.05 - Новая версия Linux-дистрибутива Fedora
  • 19.05 - Троян Bobax превращает компьютер в прокси-сервер
  • 19.05 - Microsoft выпускает Office 2004 для Mac
  • 19.05 - Yahoo выпустил новый почтовый стандарт для борьбы со спамом
  • 19.05 - В Казахстане открылось представительство Intel
  • 19.05 - Cisco и IBM объединились на ниве IP-телефонии

    Архив новостей >>>


  • Источники освещения

    DirectionalLight (направленный параллельный свет)

    Описание:

    DirectionalLight {
    ambientIntensity 0
    color 1 1 1
    direction 0 0 -1
    intensity 1
    on TRUE
    }
    

    Узел DirectionalLight задает освещение параллельными лучами в указанном направлении. По умолчанию это 0 0 -1, что означает направление точно от Вас в экран. В связи с тем, что источник предполагается бесконечно удаленным, Вам не приходится указывать координаты его координаты.

    Аналогом этого узла в окружающем мире для нас является Солнце, но в отличие от него освещение от узла DirectionalLight достается не всем предметам в сцене, а только находящимся в том же parent узле, что и сам узел. Если Вам непонятно, что такое "parent узел", читайте текст "Что такое узлы (nodes)"

    Видели когда-нибудь, чтобы на солнечной поляне под безоблачным небом два камня лежали освещенными, а третий нет :) ? А в VRML запросто... Вот нечто подобное.

    Просмотр. Текст кода.

    Учтите, что размещение узла ВНЕ всех grouping узлов равносильно участию его во ВСЕХ узлах. Легче показать на примере. Вот те же три шарика. Я добавил только одну строчку с еще одним DirectionalLight узлом ВНЕ всех Transform узлов.

    Просмотр. Текст кода.

    Обратите внимания, что при таком способе освещения НЕТ ТЕНЕЙ, средняя и правая сферы вовсе не заслонены левой!

    Параметр intensity задает яркость освещения (от 0 до 1), а ambientIntensity (от 0 до 1) задает насколько велик вклад данного источника в общее освещение сцены за счет отражения и рассеяния от объектов. Параметр color задает RGB окраску света.

    PointLight (точечный источник)

    Описание:

    PointLight {
    ambientIntensity 0
    attenuation 1 0 0
    color 1 1 1
    intensity 1
    location 0 0 0
    on TRUE
    radius 100
    }
    

    Узел PointLight служит для размещения в сцене точечного источника света, который излучает по всем направлениям (что-то вроде лампочки или свечи). Соответственно, Вы должны указать координаты источника (параметр location x y z). Что такое ambientIntensity, intensity, color смотри выше. Параметр radius задает радиус сферы освещения, а attenuation задает, как быстро будет падать интенсивность по мере удаления от центра. Три числа, указываемые для attenuation, используются в формуле для вычисления интенсивности на расстоянии r от центра:

    Вот как будет выглядеть график зависимости I(r) для некоторых наборов трех чисел в параметре attenuation. Посчитано в пределах принятого по умолчанию радиуса сферы освещения 100 м.

    Очевидно, что при attenuation 1 0 0 интенсивность менятся не будет:

    Учтите, что PointLight является children узлом, поэтому может находиться внутри узла Transform, который повлияет на положение (через параметр translation) или на радиус освещенности (через параметр scale).

    И, как обычно, пример.

    Просмотр. Текст кода.

    Обратите внимание на два момента: во-первых, действительно, поигравшись с параметрами attenuation, можно добиться видимого эффекта (в данном случае attenuation 0 0.4 0); во-вторых, так же, как и в случае DirectionalLight нет теней: средняя и правая сферы не заслонены левой!

    SpotLight (направленный расходящийся свет)

    Описание:

    SpotLight {
    ambientIntensity 0
    attenuation 1 0 0
    beamWidth 1.570796
    color 1 1 1
    cutoffAngle 0.785398
    direction 0 0 -1
    intensity 1
    location 0 0 0
    on TRUE
    radius 100
    }
    

    Глядя на список параметров узла SpotLight, нетрудно догадаться, что он является расширенной комбинацией двух предыдущих способов освещения: общими для всех являются color, ambientIntensity, intensity, on; от DirectionalLight досталось direction, а от PointLight radius и attenuation. В результате получилось что-то вроде фонарика или прожектора: источник имеет положение и светит в определенном направлении.

    Поскольку о приведенных параметрах уже говорилось в соответствующих разделах, то здесь я остановлюсь только на незнакомых beamWidth и cutoffAngle. Помимо затухания света при удалении ОТ ИСТОЧНИКА, которое регулируется параметром attenuation, можно также задать размывание по краям светового пятна. Для этого придуманы два конуса с углами раствора beamWidth и cutoffAngle.

    Во внутреннем конусе (с углом beamWidth) интенсивность в направлении перпендикулярно лучу ПОСТОЯННА, равная параметру intensity. Снаружи внешнего конуса (с углом cutoffAngle) интенсивность равна 0, а в зазоре между ними интенсивность спадает линейно. В общем виде множитель к исходной интенсивности, указанной в параметре intensity, выражается так:

    Или в графическом виде (для beamWidth=45, cutoffAngle=90 градусов):

    Все, думаю, с этим понятно. Обратите только внимание, что по умолчанию выставлено beamWidth > cutoffAngle, что дает пятно с неразмытыми краями! И не забывайте, что при размещении SpotLight внутри Transform, параметры scale и translation последнего повлияют на все параметры самого SpotLight.

    Примеры. В первом beamWidth > cutoffAngle, т.е. у пятна неразмытые края. Во втором - изменено всего лишь одно число, чтобы стало beamWidth < cutoffAngle.

    Просмотр. Текст кода.

    Просмотр. Текст кода.

    ЗАМЕЧАНИЕ! Вид этих сцен несколько отличается при просмотре в разных броузерах. В Cosmoplayer и Cortona - лучше, в MS VRML Viewer - хуже.

    И еще! Обратите внимание, что я освещал ElevationGrid, а не любой другой объект. Попробуйте, например, Box или IndexedFaceSet, и "почувствуйте разницу". А пока СОВЕТ: если Вы хотите добиться действительно пятна света, как от прожектора, освещайте ElevationGrid и чем больше xDimension и yDimension, тем лучше.

    Назад | Содержание | Вперед

     

    Подписка на новости библиотеки:

    Новые поступления в on-line библиотеку:

    20 мая

  • Оперативная интеграция данных на основе XML: системная архитектура BizQuery
  • Математика криптологии
  • Использование USB Flash под Linux
  • Мониторинг материнских плат в Linux
  • Работа с последовательными портами
  • Три письма на Perl

    18 мая

  • Xabre 600: GPU с претензиями
  • Linux: укрощение мыши и монитора
  • Семь вещей, которые нужно знать о VMWare и VirtualPC
  • BlueJ: учебная оболочка или полноценная среда разработки?
  • Inferno - виртуальный пост-Unix в кармане
  • CVS - система управления версиями

    12 мая

  • Бесполезный Perl и общая теория улучшения мира
  • Как подружить Olympus c ПК?
  • Шесть правил ухода за монитором
  • Веб-сервер своими руками
  • Поддержка MS-макросов в DELPHI
  • Интеграция Tomcat с Apache. Развертывание веб-приложений Java2 на Linux-платформе
  • Экстремальное программирование: новые возможности

    29 апреля

  • Linux на работе и дома
  • Автоматическая установка Windows
  • Гостевая книга из Perl'овки
  • HTML Help ActiveX control: всплывающие окна
  • NQL: твои агенты в Сети

    27 апреля

  • Материалы конференции "Корпоративные базы данных-2004"
  • Практическая реализация DNS
  • Shell Extensions и как с ними бороться
  • BI для массового использования:
    Барьеры, которые нужно преодолеть:: Поиск наилучшего способа реализации:: Расчет окупаемости вложений в BI-проект
  • SOAP 1.2 и запрос GET

    22 апреля

  • Обзор XML-стандартов
  • Windows и Delphi на защите секретов
  • Один в поле не воин: межсетевые экраны и антивирусы - братья навеки!
  • Все будет Samba!
  • ISPMail-HOWTO v.2.0

    20 апреля

  • Семейство алгоритмов ARIES
  • Русификация OpenBSD

    19 апреля

  • Как правильно задавать вопросы
  • Сжатие данных в целях экономии места и ускорения работы
  • Концепции построения ERP-систем на предприятии

    15 апреля

  • XML-схема. Часть 0: пример (Рекомендации W3C)
  • Сжатие таблиц в СУБД Oracle9i release 2: анализ эффективности
  • Как правильно деинсталлировать СУБД Informix на платформе Windows
  • Как написать драйвер принтера в BeOS

    13 апреля

  • Наиболее интересные новшества в стандарте SQL:2003
  • Новый взгляд на ноутбуки
  • Статистическая информация уровня сегмента в событии 10046 Oracle 9.2
  • Сколько стоит update?
  • Формирование хранимых шаблонов в Oracle 9
  • Стабилизация плана оптимизатора в Oracle 8i/9i
  • Понимание индексов на основе битовых карт
  • Oracle_trace - лучшее встроенное средство диагностики?

    8 апреля

  • Анализ рынка средств защиты от копирования и взлома программных средств
  • Аутентификация и авторизация пользователей между Web-сервером и сервером приложения в .NET
  • Особенности в проектировании и практической разработке медицинской информационной системы
  • Настройка доменов контроля доступа в JBoss 3.х.х
  • Сборка сервера JBoss 3.x из исходного кода
  • Развертывание приложения с помощью Java Web Start

    6 апреля

  • FreeBSD 5.2. Первые впечатления
  • FreeBSD 5.2: файловая система устройств
  • Примеры использования IPF
  • Настройка Ethernet Bridge
  • Управление непрерывностью вашего бизнеса
  • Веб-сервисы как вариант основы информационной инфраструктуры предприятия

    5 апреля

  • Примеры использования IPF
  • Настройка Ethernet Bridge

    1 апреля

  • ORACLE и коммерческая GRID
  • Открытые программы в Linux и их платные конкуренты в Windows
  • Windows&Fonts
  • Правильный снос Windows

    30 марта

  • Учебный курс Основы операционной системы UNIX
  • Иерархия защиты веб-серверов
  • На перекрестке дорог (сравнение стандартов памяти DDR II и RDRAM)
  • IT-планирование: новые перспективы

    25 марта

  • Новый раздел - Операционная система BeOS

  • Учебник Основы конструирования компиляторов

    Обзоры журнала Computer:

  • Диета для компьютеров
  • Бедным тоже нужны электронные услуги

    Все новости >>>



  • IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware HOWTO

    Реклама на IT-портале citforum.ru

    Нестандартные PR-акции - pr@citforum.ru
    Пресс-релизы и информация в каталог компаний - manager@citforum.ru
    Комментарии: mailto:info@citforum.ru?Subject='From bottom of CIT FORUM' Rambler's Top100 TopList This Web server launched on February 24, 1997
    Copyright © 1997-2000 CIT, © 2001-2004 CIT Forum
    Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав.