Sign in Join
Wiki copytemporary

GLScene/ru: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: GLScene/ru

OldNewLine
1+### О GLScene
2+
3+GLScene это основанная на OpenGL 3D библиотека. Изначально была написана для Delphi, но теперь спокойно работает с C++ Builder, Kylix, Delphi и Lazarus.
4+
5+Основные характеристики :
6+
7+Описание сцены
8+
9+- иерархическая структура объектов с множеством объектов (количество зависит от ОЗУ) и простотой расширения
10+- интерактивное управление сценой (numerous Delphi experts)
11+- простые функции вращения и перемещения для каждого объекта
12+- предопределенные объекты (все стандартные от куба до чайника и спрайтов), легко расширяемые
13+- структурные объекты (каркасный куб, прокси-объект) для управления композитными объектами
14+- процедурные объекты (heightfield, вращение твердых тел, трубы, tesselators...)
15+- поддержка 2D и 1D объектов (спрайты, линии с поддержкой сплайнов) полностью интегрирована
16+- HUD-объекты (спрайты визуализированные в 2D координатах)
17+- утилитные объекты (сетки, небо, стрелки...)
18+- поддержка классов для прямого доступа OpenGL
19+- объекты камеры и света могут быть использованы в любом месте иерархии объектов сцены
20+- поведенческие объекты могут быть привязаны к объектам для их анимации с возможностью расщирения
21+- специальные эффекты на объект (до/после визуализации объекта и сцены), с возможностью простого расширения
22+- поддержка систем частиц, любые объекты или структуры объектов могут выступать в роли частиц
23+- импорт 3D Studio файлов с автоматическим вычислением векторов нормалей (using the given *smoothing groups of the file) и текстурных координат
24+- поддержка других форматов импорта: OBJ/OBJF, SMD, MD2, STL, TIN, PLY
25+
26+Материалы
27+
28+- простые в использовании, оптимизированные, объекты материалов
29+- библиотека материалов для совместного использования
30+- поддержка света: окружающего, диффузного, излучаемого, отраженного и светимости
31+- поддержка режимов смешивание (прозрачность, наложения...)
32+- автогенерация альфа-канала
33+- поддержка форматов OpenGL текстур, включающих сжатие (DXT, S3TC и т.д.)
34+- общая поддержка шэйдеров
35+- высокоуровневая поддержка классов Cg шэйдеров
36+- полиморфные изображения для текстурирования (позволяют использовать множество форматов также хорошо как и процедурные текстуры, с простым расширением
37+- более чем 150 предопределенных цветов таких как clrCornflowerBlue или clrCoolCopper (легко расширяемые) *в дополнение к стандартным цветам и прямому использованию спецификации RGBA
38+- простое использование перемещения и масштабирования свойств текстур, независимо от координат текстур
39+- поддержка 32-битны растровых классов
40+
41+Визуализация
42+
43+- автоматическое использование аппаратных возможностей OpenGL, при их наличие
44+- использование с моделью камеры, фокуса, расстояния и цели
45+- множество точек обзора для одной или больше сцен, простая смена вида через выбор камеры
46+- поддержка тумана и глубины вида
47+- визуализация в файл в виде растровой картинки или на принтер в любом цвете и разрешениии
48+- поддержка полноэкранного режима с динамической сменой разрешения
49+- эффекты отражения и зеркала
50+- динамические тени
51+- высокопроизводительная поддержка системы прозрачных частиц во всей сцене
52+- automatic frustrum culling (hierarchical or per-object)
53+
54+Анимация
55+
56+- propagation of time progression events
57+- скелетная анимация (множество костей на вершину)
58+- кадровая интерполяция и морфинг целей
59+- простое расширяемое Поведение
60+- динамика: инерция, ускорение, затухание и применение силы
61+- автоматическая модуляция сцены
62+
63+Интерфейс
64+
65+- простые функции для определения выбранных объектов
66+- вспомогательные функции для перемещения камеры
67+- вспомогательные функции для для перемещения выбранных объектов
68+- вспомогательные функции для для конвертирования экранных координат в мировые
69+
70+Утилиты
71+
72+- оптимизированные геометрические функции и утилиты (вектор, [кватернион](http://ru.wikipedia.org/wiki/%D0%9A%D0%B2%D0%B0%D1%82%D0%B5%D1%80%D0%BD%D0%B8%D0%BE%D0%BD) и матрицы...)
73+- поддержка функций [кубических сплайнов](http://ru.wikipedia.org/wiki/%D0%9A%D1%83%D0%B1%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9_%D1%81%D0%BF%D0%BB%D0%B0%D0%B9%D0%BD) и классов
74+- манипуляции с [мэшами](http://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D1%88) и оптимизация (stripification, vertex-cache awareness, и т.д.)
75+- компонент для создания полноценнхы хранителей экрана в несколько щелчков
76+- точное определение скорости смены кадров
77+- асинхронный таймер (многопоточный)
78+- поддержка джойстика
79+- асинхронный доступ к клавиатуре и поддержка раскладок клавиатуры
80+
81+### Снимики экрана (Screenshots)
82+
83+![](/wiki-images/5/5c/Gl_effect.jpg) ![](/wiki-images/f/f5/Gl_cel.jpg) ![](/wiki-images/5/50/Gl_trinity.jpg)\
84+![](/wiki-images/4/49/Gl_ode.jpg)
85+
86+### Автор
87+
88+Author: изначально Mike Lischke\
89+at time maintained by Eric Grange\
90+Порт LCL: Christian Ulrich
91+
92+### Скачать
93+
94+#### Последняя версия (v1.0.0.2)
95+
96+- Новый снэпшот релиза можно найти на [Lazarus CCR Files page](http://sourceforge.net/project/showfiles.php?group_id=92177&package_id=185641).
97+
98+Этот снэпшот в основном совпадает с оригинальным cvs репозиторием по функциоанальности и исправлению ошибок, но до сих пор отсутствуют некоторые части, которые не появятся в "Lazarus-with-GLScene-Installer", пока кто нибудь не создаст их.
99+
100+--Crossbuilder 20:16, 18 Июля 2007 (CEST)
101+
102+#### Устаревшая версия
103+
104+Старый релиз (версия 0.9.1.6) можно найти по ссылке [Lazarus CCR Files page](http://sourceforge.net/project/showfiles.php?group_id=92177&package_id=98986&release_id=364007) вместе с инсталятором lazarus и интегрированным в него GLScene. ОБНОВЛЕНИЕ: Это старая версия. Постарайтесь использовать версию из svn (см. ниже).
105+
106+### SVN
107+
108+Вы можете проверить последнию версию здесь:\
109+<http://svn.freepascal.org/svn/fpcprojects/glscene/trunk/>\
110+Команда для проверки/получения:\
111+
112+ svn co http://svn.freepascal.org/svn/fpcprojects/glscene/trunk glscene
113+
114+Эта команда скачает основной репозиторий в каталог "glscene".
115+
116+В операционной системе Windows вы можете воспользоваться любым клиентом-SVN, например [tortoise](http://tortoisesvn.tigris.org).
117+
118+### Отчет об ошибках
119+
120+[Bug Reporting/Featurerequest](http://www.freepascal.org/mantis/) Пожалуйста выберите Проект "Packages" и Категорию "glscene" для своего отчета. Спасибо.
121+
122+### Изменения
123+
124+- 18.07.2007 Snapshot release version 1.0.0.2
125+ - adjusted some things, so it works with latest lazarus svn version
126+ - added object bitmaps for the SceneEditor
127+ - fixed another AV in SceneEditor
128+ - incorporated all patches and bugfixes from original glscene cvs repo like dynamic textures ..
129+- 13.06.2007 Snapshot release version 1.0.0.1
130+ - incorporated all patches and bugfixes from original glscene cvs repo
131+ - improved scene editor (crashes less, but still needs some love)\
132+ **Tip:** Save your project frequently ;-)
133+ - seperated mmsystem dependent stuff from generic sound support so e.g. FMOD is available in linux, too
134+ - many more ..
135+- 01.12.06 Added support for ODE, gtk2 and Cg shaders in Linux (ODE is limited to normal release, unsupported are cone, ccylinder and terrains)
136+- 10.08.05 Too many changes to post here see cvs history
137+- 16.07.05 GLScene 0.9.X Port
138+- look at GLScene Sourceforge Account for complete Changelog
139+
140+Статус: Beta
141+
142+### Установка версии 1.0.0.2
143+
144+**Требуется fpc 2.1.4 или новее и lazarus 0.9.23 rev. 11348 или новее !!**
145+
146+- **распаковка исходного кода**
147+ - ZIP:
148+ - в каталоге "lazarus/components/" выполните "unzip glscene-1.0.0.2.zip"\
149+ При этом будет создан каталог lazarus/components/glscene/
150+ - SVN:
151+ - в каталоге "lazarus/components/" выполните
152+ svn co http://svn.freepascal.org/svn/fpcprojects/glscene/trunk glscene
153+
154+ При этом будет создан каталоге lazarus/componets/glscene/
155+ - Tortoise SVN:
156+ - добавьте каталоге "glscene" вручную, так чтобы получилось lazarus/components/glscene. После этого выполните команду контекстного меню "SVN Checkout..." на созданном каталоге. Введите в поле "URL of repository"
157+ http://svn.freepascal.org/svn/fpcprojects/glscene/trunk
158+
159+ Подтвердите кнопкой "OK".
160+
161+- **Завершение установки:**
162+ - скопируйте "lazarus/components/glscene/globallinks/*.lpl" в "lazarus/packager/globallinks/" (только для *nix)
163+ - запустите lazarus
164+ - выполните команду "Найстройка установленных пакетов..." из меню "Пакет" (Пакет/Найстройка установленных пакетов...)
165+ - выберите "glscenelazarus" из списка "Доступные пакеты"
166+ - щелкните по кнопке "Установить выбранное"
167+ - щелкните по кнопке "Сохранить и перезапустить IDE"
168+ - ВНИМАНИЕ: Может появится ошибка о том что пакет "jpegforlazarus" не найден. Если такая ошибка появилась, то выполните следующие действия:
169+ - выполните команду Пакеты/Открыть загруженный пакет...
170+ - выберите "glscenelazarus" и щелкните "Открыть..."
171+ - в самом низу появившегося списка "Требуемые пакеты" удалите зависимость от "jpegfromlazarus".
172+ - отредактирйте модуль "jpeg" в каталоге /lazarus/components/glscene/Source/base и удалите "LazJPEG" (в разделе uses) в модуле "LazJPG" (из пакета ImagesForLazarus).
173+ - сохраните и повторите последние 4 шага опять.
174+ - ПОДСКАЗКА: Вам следует установить пакет "ImagesForLazarus" (тем же самым способом что и пакет "glscenelazarus").
175+ - повторите последние 4 шага для остальных пакетов, которые вы собираетесь использовать.
176+ - Заметка: glsceneode и glscenecgshader требуют наличия их библиотек в системе во время инсталяции!
177+ - **Заметка:** вы также можете попробовать выбрать и установить все пакеты одновременно.Тем не менее, я предпочитаю делать это шаг за шагом, чтобы видеть где произошла ошибка, если она произошла ;)
178+ - **Ошибки при установке "glscenelazarus":** (только для glscene-1.0.0.2.zip, в версии из svn это уже исправлено)
179+ - Исправьте в модуле GLLCLViewer: измените procedure TGLSceneViewer.CreateParams(var Params: TCreateParams); - на procedure TGLSceneViewerLCL.CreateParams(var Params: TCreateParams);
180+ - Исправьте в модуле GLLCLViewer: procedure TGLSceneViewer.EraseBackground(DC: HDC); - на procedure TGLSceneViewerLCL.EraseBackground(DC: HDC);
181+ - Исправьте в модуле GLLCLFullscreenViewer: измените "RegisterClasses(\[TGLSceneViewer, TGLFullScreenViewer\]);" на "RegisterClasses(\[TGLFullScreenViewer\]);"
182+
183+- **Список пакетов:**
184+ - **glscenelazarus** Основной пакет.
185+ - **glscenecgshader** Компоненты Cg-шейдеров
186+ - **glsceneode** ODE компоненты
187+ - **glss_fmodlaz** FMOD компоненты
188+ - **gls_winonly** Только для Windows. Содержит поддержку звука через mmsystem, BASS и поддержку компонента GLScreenSaver
189+
190+- **Ошибки при компиляции "демок":**
191+ - Если не найден класс - TGLSceneViewer, то следует изменить в разделе uses GLLCLViewer на GLViewer
192+
193+### Установка версии 0.9.6.1
194+
195+- Создайте каталог lazarus\components\GLScene
196+- В созданном каталоге распакуйте/разархивируйте файлы из архива
197+- Запустите Lazarus
198+- Откройте пакет glscenelazarus.lpk командой Компоненты/Открыть пакет(.lpk) из каталоге lazarus\components\glscene\Lazarus
199+- (Щелкните по кнопке Компилировать при необходимости, если не хотите установки компонент в IDE)
200+- Щелкните по кнопке Установить
201+- Повторите эти шаги (открыть .lpk, щелкните по кнопке Установить) для остальныъ пакетов, которые хотите использовать. Заметка: эти дополнительные пакеты требуют дополнительных библиотек (fmod, [ode](http://www.ode.org), [Cg](http://developer.nvidia.com/object/cg_toolkit.htm)).
202+ - glscenecgshader.lpk : Cg шейдеры (только для карт nVidia)
203+ - glsceneode.lpk : поддержка библиотеки ode
204+ - glsss_fmodlaz.lpk : поддержка библиотеки fmod
205+ - gls_winonly.lpk : может быть установлено только в операционной системе Windows. Содержит средства создания хранителей экрана.
206+
207+Подсказка: sometimes an Error "GLGraphics not found" occurs. Don't worry, just do Tools-\>Build Lazarus again and it should be ok.
208+
209+A full install of Lazarus with GLScene already in the IDE is available as [binary win32 release](http://sourceforge.net/project/showfiles.php?group_id=92177&package_id=185641&release_id=405739) or [<http://www.skinhat.com/lazarus>](http://www.skinhat.com/lazarus)
210+
211+Just a warning for (new) Linux users: GLScene in its current state is not working "out of the box" (lots of modifications/additions needed). UPDATE: this is not true anymore. glscene for lazarus is pretty up-to-date and most things work good right out of the box for windows as well as for linux.
212+
213+As of latest trunk version (see svn above) the linux version is working well. Some demos (about 20%) are still broken but the majority of glscene is now working. We're also moving towards making it work in other Unix platforms like FreeBSD.
214+
215+The missing/nonworking parts on non-windows are: glKeyboard (uses winapi, but is not required mostly), glSound(which uses mm, we need to use openal or somesuch)
216+
217+Пока в разработке [[Lazarus- Game Developers Edition|fully featured windows installer]].
218+
219+### Помощь
220+
221+- можно найти на [на основной странице GLScene](http://www.glscene.org)
222+- присоедениться к каналу \#glscene на сервере freenode.net
223+- [русский сайт GLScene](http://www.glscene.ru/)
224+
225+---
226+*From the Free Pascal wiki, page "GLScene/ru", as it stood on 2015-06-19 after a change by FTurtle, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history