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

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

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

Ответ
 
Опции темы
Старый 17.01.2007, 20:12   #1
jimon
 
Сообщений: n/a
Irrlicht 1.3 - Quake3 Shader

вот какие изменения сейчас уже :

- B3D changes by Luke:
Texture scaling bugfix, support for alpha blending,
new option to normalise weights, animation code optimization, fixed memory leak

- Fonts:
Changed original IGUIFont to IGUIFontASCII and added options for more fonts
Added CGUIFontMultiTexture for UTF16 fonts which must span many textures, loads from XML
Started a font tool for creating the new XML fonts, including generating vector fonts
(currently not backward compatible with old fonts, only works for Win2K+, some bugs still)

- GUI:
GUI Serialization with loadGUI and saveGUI, and serializable custom GUI elements via factories

Started a GUI Editor as a GUI element factory example (work in progress)

New IGUIElement functions: isSubElement & setSubElement for child elements created by their parents
(eg. a scrollbar on a list box). Set it if you don't want an element to be serialized

New GUI event, EGET_ELEMENT_FOCUSED

GUI environment ELEMENT_FOCUS_LOST event now sets the element as the caller, focus_lost events
are now usually passed to parent elements, so elements now check if they are the caller before
updating (so users can catch focus lost events without them being eaten by the elements)

Buttons and checkboxes now only activate when the mouse is released over them.

Windows mouse-up events are now caught outside the window, so mouse coords may now be negative.
Could cause problems with draggable user windows, as they may now be dragged off screen.

- ROUNDING_ERROR is now ROUNDING_ERROR_32 or ROUNDING_ERROR_64

- Material TextureWrap:
Enable Irrlicht to change TextureAddress Mode (Wrapping=Default, and Clamping)
- Material ZBuffer to u32
Resaon: change ( off or on ) to , off, lequal, equal
Necessary for multi-pass if previous stage has had transparency
- Attention!: Changed SceneManager:drawAll to
-> OnPostRender all
-> Active Camera->OnPreRender
-> OnPreRender All
reason:
- incorrect Transformation was always one frame off
- DebugDataVisible is now a enum of flags
show normals is supported ( uses the new build in arrowmesh )
- New Function: GeometryCreator
addArrowMesh. build a closed cylinder and a cone
used to show normals as debug feature
- New Function:
CMeshManipulator::transformMesh(scene::IMesh* mesh, const core::matrix4& m) const

transform VertexPosition and VertexNormal

- BUGFIX: CGUIButton notified Pressed when Mouse was clicked Inside ( correct )
but also left up outside rectangle ( incorrect)

- BUGFIX: Octree:getPolys(const scene::SViewFrustum& frustum, SIndexData* idxdata)
was recursive calling invisible children

- CFileList
Changed FileListEntry sorting to
a) Directory comes first
b) sorting ignores case
so it feel's more like common browers
- texture transformation
in my opionion ITexture is the wrong place to hold a texture transformation
a) a texture can have multiple different transformations..
b) not every ( in fact usually no texture ) has a transformationen
c) it belongs to a material...

so i removed it, and added a Texture transform to IVideoDriver::setTransform

- quaternion::getmatrix
in fact the getmatrix version is returning the transposed...
i'm quite sure that this is the wrong implementation...
so this should be verified... to remove the getmatrix_transposed version...
- Quake3 Map Loader:
added new loading method ( the old one still exists )
- Bezier Patches with LOD more than 3
- Multiple Meshes, stay compatible with the previous version
- Indexed Triangle List
- initial support for quake3 Shaders and Entities
- Shaders are parsed. When it's possible to resolve a 2 Texture Scheme it's taken
Shaders exist in namespace scene::quake3
- The Example Quake3Map shows how to continue applying the Q3Shaders with SceneNodes
( for example animmap converts to TextureAnimator.)
TODO: use the Irrlicht Variable Syntax to remove redundant code..

- added getVertexPitch () to IMeshBuffer interface

- added 3d TextSceneNode2. to view a Text in real 3D Space
- in fact it is a combination of Billboard & TextSceneNode
- added generic isupper, isspace.. functions to irrstring to remove dependencies for ctype.h
( future: it's possibly to use binary comparison test..)
removed 1000's include of string.h and moved one to irrstring.h
in preparing of complete removing the MSVC...
- moved fast_atof.h to the public include
added strtol10 to remove dependicies for stdlib.h
anyway math.h is needed for powf

- core::vector3d
added getInterpolated_quadratic.
vector3d<T> getInterpolated_quadratic(const vector3d<T>& v2, const vector3d<T>& v3, const T d) const
// this*(1-d)*(1-d) + 2 * v2 * (1-d) + v3 * d * d;

- irrstring: added param start to findLast(T c, s32 start = -1 )
reason: to continue searching reverse on a specific position
(parameter is checked against boundaries )


- added operation reciprocal_squareroot to irrmath.

core::reciprocal_squareroot = 1.f / sqrtf ( x )
changed the core::vector3df normalize vector...
are specialized templates allowed in irrlicht?.. ( maybe not )
so it's only for f32 for now...

a C function and a NVidia Version are in irrmath.h
or we use the famous Quake3 version...

- add Primitives to CFPSCounter
and changed interpolation to 1500ms instead of 2000ms
and rounding to ceiling..
- add Interface setAmbientLight to ISceneManager
it was a Bug, because SceneManager always calls Driver
therefore AmbientLight has to be set in SceneManager...

- Burning Video
- New Compile Config BURNINGVIDEO_RENDERER_ULTRA_FAST
- New Compile Config BURNINGVIDEO_RENDERER_FAST
touching the 20fps border in the demo ( P4 mobile 2Ghz ). 15fps average.
( Compile config Release Fast-FPU )

people in the forum complain that burning video is slow...
BURNINGVIDEO_RENDERER_ULTRA_FAST has at least double speed as software renderer1
but with clipping, 32 Bit Z-Buffer, 2 Texture Stage + mipmapping + 32 Bit Texture and subpixel..
that means.. twice data load, ca. 1/4 more triangles, more division..

you can compare it when now clipping is involved..
the movement example is a good candidate..

- VertexCache for Tansformed & Light Vertices
boost small drawPrimitive Calls ( 2DRectangle, Billboard ) and Real Index Triangles

- Bilinear Dither
- clipping test ( compare instead of generic plane normal )
- support for NOT using vertexcolor
#define SOFTWARE_DRIVER_2_USE_VERTEX_COLOR

- changed GUIFont & FontTool to support kerning.. ( on a global basis )

very basic mode.. apply an offset for position
useful for example if you want to apply an outline stroke in your favorite
and therefore let the texture grow..
and to correct the border back on drawing, specify the parameter in IGUIFont..
this is quite useful if you want to use more artistic fonts.
default = 0

better kerning would need a seperate coordinate set for each symbol..

- added vertex to color to billboard.
shade top & shade down.
to support some static lighting effect on billboards

- changed MD2_FRAME_SHIFT to lower framerate
-> lower IPol
problems can occur if somebody uses hardcoded frame-numbers instead
of Animation name...
- changed spelling "frustrum" to "frustum"
-> changed also SViewFrustrum.h to SViewFrustum.h

- changed Parameter AutomaticCulling from bool to enum E_CULLING_TYPE
to support more than two culling modes.

added Frustum culling ( it's a copy & paste from the octree )
added initial bounding sphere
used for culling point lights..


- The ISceneManager::addCameraSceneNodeFPS() has a new parameter named 'jumpSpeed'
and a Key Map Entry.


- testing matrix4 for identity before multiply
mhmm. i remember this was inserted in long time previous versions..
anyway. it's enabled again.


- Added getSystemMemory and getProcessorSpeedMHz for Windows and Linux to the OSOperator, submitted by Vitek.

- Added core::map class submitted by Nastase Catalin (Kat'Oun)
радует что добавили возможность юзать шейдеры из ку3
ето дает стоооока возможностей что офигеть точнее можно использовать готовые карты из ку3

ps. так же они наконецто взялись за гуи
редактор уже хоть какойто оффициальный есть
 
Ответить с цитированием
Старый 18.01.2007, 01:46   #2
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Re: Irrlicht 1.3 - Quake3 Shader

а сравнения между движками blitz(mmengine) и irrlicht не делали?
а то irrlicht ето единственный двиг который мне удалось запустить у себя. и Jimon, а где-нибудь есть сэмплы на irrlicht, не те что в стандарном дистрибутиве, а что-то более-менее рабочее?
п.с. новая версия радует.
(Offline)
 
Ответить с цитированием
Старый 18.01.2007, 08:51   #3
jimon
 
Сообщений: n/a
Re: Irrlicht 1.3 - Quake3 Shader

эм всмысле более-мение рабочие семплы ?
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
IrrLicht shybovycha C++ 109 22.02.2011 13:54
Shader.dll - помогите разобраться Blitz3d_god Библиотеки 8 27.11.2009 00:22
Shader Explosion johnk Болтовня 2 28.05.2007 01:35
Об Irrlicht. johnk C++ 1 03.04.2007 08:49
Quake3 -> что_нибудь -> ms3d\b3d with animations jimon 3D Моделирование 0 29.09.2006 01:02


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


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