Jump to content

Post-processing effects test (SSAO/HDR/Bloom)


Recommended Posts

Testing this branch on the following system: system_info.txt

With unchanged default.cfg, I get this error starting a game:


Assertion failed: "0 && (L"Can't find a usable technique")"
Location: ShaderManager.cpp:478 (CShaderManager::NewEffect)

Call stack:

CShaderManager::NewEffect (shadermanager.cpp:478)
this = (unavailable)
name = 0x0C2B4E08 -> "los_interp"
baseDefines = 0x0012EE8C ->

m_Items = 0x01557358 ->
items = (unsupported vector<pair<CStrIntern,CStrIntern> >)
hash = 309189910 (0x126DDD16)



tech = 0x0012EE90 ->
px = 0x0C2AF6B0 ->
m_Passes = (unsupported vector<CShaderPass >)
m_SortByDistance = false

pn =
pi_ = 0x0C2B3CB8 ->
use_count_ = 1 (0x00000001)
weak_count_ = 1 (0x00000001)



XeroFile =

m_Pointer = 0x15554051 -> [8] { 154, 0, 0, 0, 0, 0, 0, 0 }
m_ElementNameCount = 4 (0x00000004)
m_AttributeNameCount = 2 (0x00000002)
m_ElementPointer = 0x15554008 -> [8] { 7, 0, 0, 0, 101 ('e'), 102 ('f'), 102 ('f'), 101 ('e') }
m_AttributePointer = 0x1555403A -> [8] { 7, 0, 0, 0, 115 ('s'), 104 ('h'), 97 ('a'), 100 ('d') }

m_XMBBuffer =
px = 0x15554000 -> "XMB0"
pn =
pi_ = 0x0C2B36D8 ->
use_count_ = 2 (0x00000002)
weak_count_ = 1 (0x00000001)




at_context = 4294967295 (0xFFFFFFFF)
_children_431 =
Count = 1 (0x00000001)
m_Pointer = 0x15554069 -> [8] { 130, 0, 0, 0, 3, 0, 0, 0 }
m_LastItemID = 0 (0x00000000)
m_LastPointer = 0x15554069 (see above)

at_name = 4294967295 (0xFFFFFFFF)
el_define = 4294967295 (0xFFFFFFFF)
at_shader = 0 (0x00000000)
usableTechs = (unsupported vector<pair<XMBElement,int> >)
el_blend = 4294967295 (0xFFFFFFFF)
el_pass = 1 (0x00000001)
Technique =
m_Pointer = 0x15554069 (see above)

at_mask = 4294967295 (0xFFFFFFFF)
preferGLSL = true
el_depth = 4294967295 (0xFFFFFFFF)
hasARB = true
Child =
m_Pointer = 0x0051D56A -> [8] { 131, 196, 4, 139, 206, 255, 21, 52 ('4') }

at_ref = 4294967295 (0xFFFFFFFF)
profile2__ =
m_Name = 0x0067BF34 -> "loading effect"

el_alpha = 4294967295 (0xFFFFFFFF)
at_shaders = 1 (0x00000001)
at_value = 4294967295 (0xFFFFFFFF)
Root =
m_Pointer = 0x15554051 (see above)

el_sort_by_distance = 4294967295 (0xFFFFFFFF)
at_dst = 4294967295 (0xFFFFFFFF)
xmlFilename =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 47 ('/')

at_func = 4294967295 (0xFFFFFFFF)
preprocessor =
m_Preprocessor =
Source = 0x01010060 -> [8] { 0, 0, 0, 0, 0, 0, 0, 0 }
SourceEnd = 0x0012EBD8 -> [8] { 0, 160, 145, 124 ('|'), 255, 255, 255, 255 }
Line = 9503195 (0x009101DB)
BOL = (bool)0x10
EnableOutput = 2089871648 (0x7C90E920)
MacroList = 0x0C2B13D0 ->
Name =
Type = TK_KEYWORD
Allocated = 0 (0x00000000)
String = 0x0154AA60 -> "SYS_PREFER_GLSL"
Buffer = 0x0154AA60 (see above)
Length = 15 (0x0000000F)

NumArgs = 0 (0x00000000)
Args = 0x00000000
Value =
Type = TK_TEXT
Allocated = 0 (0x00000000)
String = 0x0149FE78 -> "1"
Buffer = 0x0149FE78 (see above)
Length = 1 (0x00000001)

Body =
Type = TK_ERROR
Allocated = 0 (0x00000000)
String = 0x00000000
Buffer = 0x00000000
Length = 0 (0x00000000)

Next = 0x0C2B12A0 ->
Name =
Type = TK_KEYWORD
Allocated = 0 (0x00000000)
String = 0x00E0B720 -> "SYS_HAS_ARB"
Buffer = 0x00E0B720 (see above)
Length = 11 (0x0000000B)

NumArgs = 0 (0x00000000)
Args = 0x00000000
Value =
Type = TK_TEXT
Allocated = 0 (0x00000000)
String = 0x0149FE78 (see above)
Buffer = 0x0149FE78 (see above)
Length = 1 (0x00000001)

Body =
Type = TK_ERROR
Allocated = 0 (0x00000000)
String = 0x00000000
Buffer = 0x00000000
Length = 0 (0x00000000)

Next = 0x00000000
ExpandFunc = 0x00000000
Expanding = false

ExpandFunc = 0x00000000
Expanding = false

ErrorData = 0xFFFFFFFF


techDefines =

m_Items = 0x40000060 ->
items = (unsupported vector<pair<CStrIntern,CStrIntern> >)
hash = (unavailable - internal error)




el_require = 2 (0x00000002)
at_src = 4294967295 (0xFFFFFFFF)
hasGLSL = false
_children_487 =
Count = 14680064 (0x00E00000)
m_Pointer = 0x0C2AF6B0 (see above)
m_LastItemID = 1073741920 (0x40000060)
m_LastPointer = 0x7C90E920 -> [8] { 85 ('U'), 139, 236, 131, 236, 8, 83 ('S'), 86 ('V') }

pass =
m_Shader =
px = 0x7C91A3D0 ->
m_IsValid = false
m_StreamFlags = 2090122799 (0x7C94BE2F)
m_ValidStreams = 0 (0x00000000)

pn =
pi_ = 0xFFFFFFFF (see above)


m_HasAlpha = (bool)0xCB
m_AlphaFunc = 2089918906 (0x7C91A1BA)
m_AlphaRef = 0.000000 (0x00E00000)
m_HasBlend = (bool)0x60
m_BlendSrc = 2089877597 (0x7C91005D)
m_BlendDst = 2 (0x00000002)
m_HasColorMask = (bool)0x20
m_ColorMaskR = 238 (0xEE)
m_ColorMaskG = 18 (0x12)
m_ColorMaskB = 0 (0x00)
m_ColorMaskA = 176 (0xB0)
m_HasDepthMask = (bool)0xF6
m_DepthMask = 42 (0x2A)
m_HasDepthFunc = (bool)0x0C
m_DepthFunc = 2089919435 (0x7C91A3CB)

program =
px = 0x0012EE00 ->
m_IsValid = false
m_StreamFlags = 1240612 (0x0012EE24)
m_ValidStreams = 2024481595 (0x78AB233B)

pn =
pi_ = 0x155540AB ->
use_count_ = 1 (0x00000001)
weak_count_ = 1 (0x00000001)



_i_431 = 1 (0x00000001)
_children_435 =
Count = 2 (0x00000002)
m_Pointer = 0x15554081 -> [8] { 42 ('*'), 0, 0, 0, 2, 0, 0, 0 }
m_LastItemID = 1 (0x00000001)
m_LastPointer = 0x155540AB (see above)

Child =
m_Pointer = 0x155540AB (see above)

preference = 100 (0x00000064)
isUsable = false
Attrs =
Count = 1 (0x00000001)
m_Pointer = 0x155540C3 -> [8] { 0, 0, 0, 0, 32 (' '), 0, 0, 0 }
m_LastItemID = 4294967294 (0xFFFFFFFE)
m_LastPointer = 0x0C2B6828 -> [8] { 216, 140, 103 ('g'), 0, 0, 0, 0, 0 }

cond = { (unsupported basic_string<char,char_traits<char> >) }
_i_487 = 1 (0x00000001)
pass =
m_Shader =
px = 0x7C91A3D0 (see above)
pn =
pi_ = 0xFFFFFFFF (see above)


m_HasAlpha = (bool)0xCB
m_AlphaFunc = 2089918906 (0x7C91A1BA)
m_AlphaRef = 0.000000 (0x00E00000)
m_HasBlend = (bool)0x60
m_BlendSrc = 2089877597 (0x7C91005D)
m_BlendDst = 2 (0x00000002)
m_HasColorMask = (bool)0x20
m_ColorMaskR = 238 (0xEE)
m_ColorMaskG = 18 (0x12)
m_ColorMaskB = 0 (0x00)
m_ColorMaskA = 176 (0xB0)
m_HasDepthMask = (bool)0xF6
m_DepthMask = 42 (0x2A)
m_HasDepthFunc = (bool)0x0C
m_DepthFunc = 2089919435 (0x7C91A3CB)

Element =
m_Pointer = 0x00000064

passDefines =

m_Items = 0x155540AB (see above)


_children_503 =
Count = 2 (0x00000002)
m_Pointer = 0x15554081 (see above)
m_LastItemID = 1 (0x00000001)
m_LastPointer = 0x155540AB (see above)

_i_503 = 1 (0x00000001)
ref = 0.000000 (0x0012EE8C)

CShaderManager::LoadEffect (shadermanager.cpp:359)
this = (unavailable)
name =
m = 0x0C2B4E08 (see above)

defines1 = 0x0012EED4 ->

m_Items = 0x01557358 (see above)


defines2 = 0x0012EEDC ->

m_Items = 0x00E0FD28 ->
items = (unsupported vector<pair<CStrIntern,CStrIntern> >)
hash = 0 (0x00000000)



defines =

m_Items = 0x01557358 (see above)


key =
name =
m = 0x0C2B4E08 (see above)

defines1 =

m_Items = 0x01557358 (see above)


defines2 =

m_Items = 0x00E0FD28 (see above)



tech =
px = 0x0C2AF6B0 (see above)
pn =
pi_ = 0x0C2B3CB8 (see above)


it =
{ { (unsupported iterator<forward_iterator_tag,pair<CShaderManager::EffectCacheKey const ,boost::shared_ptr<CShaderTechnique> >,int,pair<CShaderManager::EffectCacheKey const ,boost::shared_ptr<CShaderTechnique> > *,pair<CShaderManager::EffectCacheKey const ,boost::shared_ptr<CShaderTechnique> > &>) } }
base_ =
bucket_ = 0x00000000
node_ = 0x0154AA60 (see above)



CShaderManager::LoadEffect (shadermanager.cpp:341)
this = (unavailable)
name = 0x0067ADE0 -> "los_interp"

CLOSTexture::CLOSTexture (lostexture.cpp:58)
this = (unavailable)
simulation = 0x0C29D808 ->
m = 0x0C2A7A98 ->
m_SimContext =
m_ComponentManager = 0x0C2A7AA8 ->
m_ScriptInterface =
m = (auto_ptr<ScriptInterface_impl>)

m_SimContext = 0x0C2A7A98 (see above)
m_CurrentComponent = 0 (0x00000000)
m_CurrentlyHotloading = false
m_ComponentTypesById = (unsupported map<int,CComponentManager::ComponentType >)
m_ComponentsByInterface = (unsupported vector<boost::unordered_map<size_t,IComponent *,boost::hash<size_t>,equal_to<size_t> > >)
m_ComponentsByTypeId = (unsupported map<int,map<size_t,IComponent * > >)
m_LocalMessageSubscriptions = (unsupported map<int,vector<int > >)
m_GlobalMessageSubscriptions = (unsupported map<int,vector<int > >)
m_ComponentTypeIdsByName = (unsupported map<basic_string<char,char_traits<char> >,int >)
m_MessageTypeIdsByName = (unsupported map<basic_string<char,char_traits<char> >,int >)
m_MessageTypeNamesById = (unsupported map<int,basic_string<char,char_traits<char> > >)
m_InterfaceIdsByName = (unsupported map<basic_string<char,char_traits<char> >,int >)
m_DestructionQueue = (unsupported vector<size_t >)
m_NextScriptComponentTypeId = 41 (0x00000029)
m_NextEntityId = 2 (0x00000002)
m_NextLocalEntityId = 536870912 (0x20000000)
m_RNG =
lcf =
_x = 78606 (0x000000000001330E)



m_UnitManager = 0x0C29E9C8 ->
m_Units = (unsupported vector<CUnit * >)
m_ObjectManager = 0x00000000

m_Terrain = 0x0C29EEB8 ->
m_MapSize = 0 (0x00000000)
m_MapSizePatches = 0 (0x00000000)
m_Patches = 0x00000000
m_Heightmap = 0x00000000
m_BaseColour =
R = [8] { 255 (0xFF), 255 (0xFF), 255 (0xFF), 255 (0xFF), 13 (0x0D), 240 (0xF0), 173 (0xAD), 186 (0xBA) }
G = 255 (0xFF)
B = 255 (0xFF)
A = 255 (0xFF)

m_HeightMipmap =
m_MapSize = 3131961357 (0xBAADF00D)
m_Mipmap = (unsupported vector<SMipmap >)



m_ComponentManager =
m_ScriptInterface =
m = (auto_ptr<ScriptInterface_impl>)

m_SimContext = 0x0C2A7A98 (see above)
m_CurrentComponent = 0 (0x00000000)
m_CurrentlyHotloading = false
m_ComponentTypesById = (unsupported map<int,CComponentManager::ComponentType >)
(too much output; skipping to next top-level symbol)

m_DeltaTime = -4.8367e-026 (0xBAADF00DBAADF00D)
m_LastFrameOffset = -0.001327 (0xBAADF00D)
m_StartupScript = (unsupported basic_string<char,char_traits<char> >)
m_InitAttributes =
m_Val =
px = 0x00000000
pn =
pi_ = 0x00000000



m_MapSettings =
m_Val =
px = 0x00000000
pn =
pi_ = 0x00000000



m_LoadedScripts = (unsupported set<Path >)
m_TurnNumber = 3131961357 (0xBAADF00D)
m_EnableOOSLog = false
m_EnableSerializationTest = false


shader =
px = 0x0C2B68CC ->
m_IsValid = (bool)0xA8
m_StreamFlags = 204068872 (0x0C29D808)
m_ValidStreams = 3131961357 (0xBAADF00D)

pn =
pi_ = 0x0012EF38 ->
use_count_ = 6564912 (0x00642C30)
weak_count_ = 4 (0x00000004)




CGameViewImpl::CGameViewImpl (gameview.cpp:202)
this = (unavailable)
game = 0x0C2A7350 ->
m_World = 0x0C29EB78 ->
m_pGame = 0x0C2A7350 (see above)
m_Terrain = 0x0C29EEB8 (see above)
m_UnitManager = 0x0C29E9C8 (see above)
m_TerritoryManager = 0x00000000

m_Simulation2 = 0x0C29D808 (see above)
m_GameView = 0xBAADF00D ->
(Scene)
m = (unavailable - internal error)


m_GameStarted = (bool)0x0D
m_SimRate = -0.001327 (0xBAADF00D)
m_PlayerID = 3131961357 (0xBAADF00D)
m_TurnManager = 0xBAADF00D (see above)
m_Paused = (bool)0x0D
m_ReplayLogger = 0xBAADF00D (see above)
m_PlayerColours = (unsupported vector<CColor >)
m_InitialSavedState = (unsupported basic_string<char,char_traits<char> >)
m_IsSavedGame = (bool)0x0D


CGameView::CGameView (gameview.cpp:335)
this = (unavailable)
pGame = 0x0C2A7350 (see above)
vp =
m_X = 0 (0x00000000)
m_Y = 1241016 (0x0012EFB8)
m_Width = 2024481595 (0x78AB233B)
m_Height = 8 (0x00000008)


CGame::CGame (game.cpp:70)
this = (unavailable)
disableGraphics = (bool)0x08

`anonymous namespace'::StartGame (scriptfunctions.cpp:193)
cbdata = 0x00E0BD80
attribs =
m_Val = -281444741851448 (0xFFFF00070A2356C8)

playerID = 1 (0x00000001)
gameAttribs =
m_Val =
px = 0x00000000
pn =
pi_ = 0xFFFFFFFF (see above)




ScriptInterface::call<void,CScriptVal,int,&`anonymous namespace'::StartGame> (nativewrapperdefns.h:104)
cx = 0x0100F518 -> (JSContext)
argc = 1 (0x00000001)
vp = 0x09D300D0 -> -281444741998720 (0xFFFF00070A211780)
a0 =
m_Val = -281444741851448 (0xFFFF00070A2356C8)

a1 = 1 (0x00000001)

JS_CompareValues (:0)

JS_CompareValues (:0)

JS_CompareValues (:0)

JS_CompareValues (:0)

JS_CompareValues (:0)

IGUIObject::SendEvent (iguiobject.cpp:477)
this = (unavailable)
type = GUIM_PRESSED
EventName = 0x0012F9D8 -> { (unsupported basic_string<char,char_traits<char> >) }
msg =
type = GUIM_PRESSED
value = { (unsupported basic_string<char,char_traits<char> >) }
skipped = false


IGUIButtonBehavior::HandleMessage (iguibuttonbehavior.cpp:68)
this = (unavailable)
Message = 0x0012FA74 ->
type = GUIM_MOUSE_RELEASE_LEFT
value = { (unsupported basic_string<char,char_traits<char> >) }
skipped = false

enabled = false
enabled = true

CButton::HandleMessage (cbutton.cpp:86)
this = (unavailable)
Message = 0x0012FA74 (see above)

IGUIObject::SendEvent (iguiobject.cpp:475)
this = (unavailable)
type = GUIM_MOUSE_RELEASE_LEFT
EventName = 0x0012FB58 -> { (unsupported basic_string<char,char_traits<char> >) }
msg =
type = GUIM_MOUSE_RELEASE_LEFT
value = { (unsupported basic_string<char,char_traits<char> >) }
skipped = false


CGUI::HandleEvent (cgui.cpp:214)
this = (unavailable)
ev = 0x0012FC5C ->
ev =
type = [8] { 4 (0x04), 1 (0x01), 0 (0x00), 255 (0xFF), 0 (0x00), 3 (0x03), 221 (0xDD), 2 (0x02) }
active = { type = 4 (0x04), gain = 1 (0x01), state = 0 (0x00) }
key =
type = 4 (0x04)
keysym = { sym = 48038656, unicode = 47183 (0xB84F) }

motion = { type = 4 (0x04), x = 65280 (0xFF00), y = 768 (0x0300) }
button =
type = 4 (0x04)
button = 1 (0x01)
state = 0 (0x00)
x = 768 (0x0300)
y = 733 (0x02DD)

resize = { type = 4 (0x04), w = 48038656 (0x02DD0300), h = 6076495 (0x005CB84F) }
expose = { type = 4 (0x04) }
quit = { type = 4 (0x04) }
user = { type = 4 (0x04), code = 48038656 (0x02DD0300), data1 = 0x005CB84F }


pNearest = 0x0C20ED08 ->
m_CachedActualSize =
left = 716.000000 (0x44330000)
top = 716.000000 (0x44330000)
right = 856.000000 (0x44560000)
bottom = 744.000000 (0x443A0000)

m_Name = { (unsupported basic_string<char,char_traits<char> >) }
m_Children = (unsupported vector<IGUIObject * >)
m_pParent = 0x0C190880 ->
m_CachedActualSize =
left = 0.000000 (0x00000000)
top = 0.000000 (0x00000000)
right = 1024.000000 (0x44800000)
bottom = 768.000000 (0x44400000)

m_Name = { (unsupported basic_string<char,char_traits<char> >) }
m_Children = (unsupported vector<IGUIObject * >)
m_pParent = 0x01517200 ->
m_CachedActualSize =
left = 0.000000 (0x00000000)
top = 0.000000 (0x00000000)
right = 0.000000 (0x00000000)
bottom = 0.000000 (0x00000000)

m_Name = { (unsupported basic_string<char,char_traits<char> >) }
m_Children = (unsupported vector<IGUIObject * >)
m_pParent = 0x00000000
m_LastClickTime = [6]
0 (0x0000000000000000)
0 (0x0000000000000000)
0 (0x0000000000000000)
0 (0x0000000000000000)
0 (0x0000000000000000)
0 (0x0000000000000000)
m_MouseHovering = false
m_Settings = (unsupported map<CStr8,SGUISetting >)
m_pGUI = 0x0C163950 ->
m_ScriptObject = 0x0A2362F8 -> (JSObject)
m_MousePos =
x = 768.000000 (0x44400000)
y = 733.000000 (0x44374000)

m_MouseButtons = 2 (0x00000002)
m_Tooltip =
m_State = 3 (0x00000003)
m_PreviousObject = 0x0C20ED08 (see above)
m_PreviousTooltipName = { (unsupported basic_string<char,char_traits<char> >) }
m_PreviousMousePos =
x = 768.000000 (0x44400000)
y = 734.000000 (0x44378000)

m_Time = 6.5389 (0x401A27D675B4FFBA)
m_IsIconTooltip = false

m_PreDefinedColors = (unsupported map<CStr8,CColor >)
m_BaseObject = 0x01517200 (see above)
m_FocusedObject = 0x0C20ED08 (see above)
m_pAllObjects = (unsupported map<CStr8,IGUIObject * >)
m_InternalNameNumber = 35 (0x00000023)
m_ObjectTypes = (unsupported map<CStr8,IGUIObject * (__cdecl*)(void) >)
m_HotkeyObjects = (unsupported map<CStr8,vector<IGUIObject * > >)
(too much output; skipping to next top-level symbol)

m_ScriptHandlers = (unsupported map<CStr8,JSObject * * >)
m_JSObject = 0x00000000

m_LastClickTime = [6]
0 (0x0000000000000000)
6.49519 (0x4019FB136371F2E9)
0 (0x0000000000000000)
0 (0x0000000000000000)
0 (0x0000000000000000)
0 (0x0000000000000000)
m_MouseHovering = false
m_Settings = (unsupported map<CStr8,SGUISetting >)
m_pGUI = 0x0C163950 (see above)
m_ScriptHandlers = (unsupported map<CStr8,JSObject * * >)
m_JSObject = 0x0A2364D8 -> (JSObject)

m_LastClickTime = [6]
0 (0x0000000000000000)
6.78631 (0x401B252D6BD6BDB3)
0 (0x0000000000000000)
0 (0x0000000000000000)
0 (0x0000000000000000)
0 (0x0000000000000000)
m_MouseHovering = true
m_Settings = (unsupported map<CStr8,SGUISetting >)
m_pGUI = 0x0C163950 (see above)
m_ScriptHandlers = (unsupported map<CStr8,JSObject * * >)
m_JSObject = 0x0A289230 -> (JSObject)

ret = IN_PASS
oldMousePos =
x = 768.000000 (0x44400000)
y = 733.000000 (0x44374000)

msg =
type = 1243932
value = { (unsupported basic_string<char,char_traits<char> >) }
skipped = (bool)0xCF

timeElapsed = 6.7863 (0x401B252CE89A8C52)
timeElapsed = 6.7863 (0x401B252CE89A8C52)
e = 0x00000000

CGUIManager::HandleEvent (guimanager.cpp:214)
this = (unavailable)
ev = 0x0012FC5C (see above)
handled = false
r = 203484424

gui_handler (guimanager.cpp:48)
ev = 0x0012FC5C (see above)

in_dispatch_event (input.cpp:60)
ev = 0x0012FC5C (see above)

PumpEvents (main.cpp:191)
profile2__ =
m_Name = 0x0065E54C -> "dispatch events"

ev =
ev =
type = 4 (0x04)
active = { type = 4 (0x04), gain = 1 (0x01), state = 0 (0x00) }
key =
type = 4 (0x04)
keysym = { sym = 48038656, unicode = 47183 (0xB84F) }

motion = { type = 4 (0x04), x = 65280 (0xFF00), y = 768 (0x0300) }
button =
type = 4 (0x04)
button = 1 (0x01)
state = 0 (0x00)
x = 768 (0x0300)
y = 733 (0x02DD)

resize = { type = 4 (0x04), w = 48038656 (0x02DD0300), h = 6076495 (0x005CB84F) }
expose = { type = 4 (0x04) }
quit = { type = 4 (0x04) }
user = { type = 4 (0x04), code = 48038656 (0x02DD0300), data1 = 0x005CB84F (see above) }


profile2__ =
m_Name = 0x0065E544 -> "event"

data = (unsupported basic_string<char,char_traits<char> >)

Frame (main.cpp:354)
realTimeSinceLastFrame = 0.028748 (0x3CEB8190)
need_update = true
profile2__ =
m_Name = 0x0065E76C -> "frame"

need_render = true
profile2__ =
m_Name = 0x401B241A -> (unavailable - internal error)


down = [3] { 0.000000 (0x0063669B), -0.000000 (0xB2166BBF), 2.424078 (0x401B2419) }
profile2__ =
m_Name = 0x401B241A (see above)

profile2__ =
m_Name = 0x401B241A (see above)

profile2__ =
m_Name = 0x401B241A (see above)


RunGameOrAtlas (main.cpp:529)
argc = 1 (0x00000001)
argv = (unavailable)
args =
m_Args = (unsupported vector<pair<CStr8,CStr8> >)
m_Arg0 =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 92 ('\')


paths =
m_root =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 1476

m_rdata =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 65535

m_gameData =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 0

m_userData =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 37669

m_config =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 41936

m_cache =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 0

m_logs =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 617


replay =
m_Stream = 0x7C94BAFC -> (basic_istream<char,char_traits<char> >)

mod =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 65204

zip =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 1843

paths =
m_root =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 1476

m_rdata =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 65535

m_gameData =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 0

m_userData =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 37669

m_config =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 41936

m_cache =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 0

m_logs =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 617


builder =
m_VFS =
px = 0x00E00000 -> (IVFS)
pn =
pi_ = 0x40000060 (see above)


m_Files = (unsupported vector<Path >)
m_TempDir =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 65040



main (main.cpp:572)
argc = 1 (0x00000001)
argv = 0x00E06430 -> 0x00E078C0 -> "C:\Documents and Settings\Ben\My Documents\Github\0ad\build\workspaces\vc2010\..\..\..\binaries\system\pyrogenesis.exe"

wmain (wseh.cpp:380)
argc = 1 (0x00000001)
argv = 0x00E054B0 -> 0x00E054B8 -> "C:\Documents and Settings\Ben\My Documents\Github\0ad\build\workspaces\vc2010\..\..\..\binaries\system\pyrogenesis.exe"
utf8_argv = (unsupported vector<char * >)
ret = 14701744 (0x00E054B0)
utf8 = (unsupported basic_string<char,char_traits<char> >)

CallStartupWithinTryBlock (wseh.cpp:397)
ret = 32 (0x00000020)

RegisterWaitForInputIdle (:0)


errno = 0 (No error reported here)
OS error = 0 (no error code was set)

which is no big deal since the hardware doesn't support GLSL, though it would be nice if it didn't crash. But then I set preferglsl, gentangents, and smoothlos to false, and I get this error (with renderpath defaulting to "shader"):


Function call failed: return value was -120000 (Handle index completely out of bounds)
Location: h_mgr.cpp:197 (h_data_from_idx)

Call stack:

h_data_no_tag (h_mgr.cpp:218)
h = 378771991856 (0x000000583091ED30)
hd = (unavailable)

h_data_tag_type (h_mgr.cpp:256)
h = 378771991856 (0x000000583091ED30)
type = 0x006D1180 ->
init = 0x005F88F0 -> (OglTex_init)
reload = 0x005F87E0 -> (OglTex_reload)
dtor = 0x005F75B0 -> (OglTex_dtor)
validate = 0x005F81C0 -> (OglTex_validate)
to_string = 0x005F75F0 -> (OglTex_to_string)
user_size = 64 (0x00000040)
name = 0x00691058 -> "OglTex"

hd = (unavailable)

h_free (h_mgr.cpp:597)
h = 0x0012E978 -> 0 (0x0000000000000000)
type = 0x006D1180 (see above)
hd = 0x0012E978 (see above)
s = (H_ScopedLock)

ogl_tex_free (ogl_tex.cpp:588)
ht = 0x0012E978 (see above)

std::map<Path,TerrainAlpha,std::less<Path>,std::allocator<std::pair<Path const ,TerrainAlpha> > >::operator[] (map:215)
this = (unavailable)
_Keyval = 0x0012F6A4 ->
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = [8] { 47 ('/'), 18, 0, 12433, 480, 31889, 65535, 65280 }

_Where = (unsupported _Tree_iterator<_Tree_val<<Path,TerrainAlpha> >)

CTerrainTextureEntry::LoadAlphaMaps (terraintextureentry.cpp:214)
this = (unavailable)
amtype = (unavailable)
textures = [14]
63050396873306692 (0x00E000007C94B244)
8976131429758927201 (0x7C919FFA50000161)
63324173178503168 (0x00E0F90000000000)
63050394797867008 (0x00E0000000E00000)
8976131429758927201 (0x7C919FFA50000161)
63050394783186944 (0x00E0000000000000)
5329317770082081 (0x0012EEFC7C94B721)
8976131430506667880 (0x7C919FFA7C919F68) ...
path =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 14008

t =
data =
px = 0x00000004
pn =
pi_ = 0x00E001C0 ->
use_count_ = 14680512 (0x00E001C0)
weak_count_ = 14680520 (0x00E001C8)



dataSize = 814869664 (0x3091ECA0)
ofs = 8 (0x00000008)
w = 814823248 (0x30913750)
h = 14680656 (0x00E00250)
bpp = 28 (0x0000001C)
flags = 1 (0x00000001)

data =
px = 0x000000EC
pn =
pi_ = 0x3091C4A8 ->
use_count_ = 1667196270 (0x635F656E)
weak_count_ = 1717987692 (0x6666696C)



total_w = 128 (0x00000080)
key = 0x00000002
fnames = [14]
0x00000001
0x3091F4E8 -> [8] { 18, 2, 1795, 1560, 21088, 12433, 22352, 343 }
0x30913788 -> [8] { 18, 8, 1903, 1560, 8320, 343, 14424, 12433 }
0x0A981E48 -> [8] { 0, 0, 28344, 4016, 10944, 2714, 42856, 24 }
0x7C919FFA -> [8] { 3266, 36864, 37008, 65535, 65535, 0, 0, 40989 }
0x00E001C8 -> [8] { 456, 224, 456, 224, 464, 224, 464, 224 }
0x00000002
0x3091F4A0 -> [8] { 7, 8, 1802, 1560, 28787, 25445, 25940, 120 ('x') }
0x00000080
0x7C94B721 -> [8] { 4329, 64744, 47359, 43947, 43947, 19851, 35756, 4181 }
0x30915980 -> "standard"
0x000000DD ...
base = 14680576 (0x00E00200)
bpp = 0 (0x00000000)
it = (unsupported _Tree_iterator<_Tree_val<<Path,TerrainAlpha> >)
i = 96 (0x00000060)
this_height = 17 (0x00000011)
this_width = 21630120 (0x014A0CA8)
this_bpp = 21630120 (0x014A0CA8)
standard =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 64884

context = [2048]
24 (0x18)
0 (0x00)
0 (0x00)
0 (0x00)
24 (0x18)
0 (0x00)
0 (0x00)
0 (0x00)
192 (0xC0)
1 (0x01)
224 (0xE0)
0 (0x00)
1 (0x01)
0 (0x00)
0 (0x00)
0 (0x00) ...
context = [2048]
24 (0x18)
0 (0x00)
0 (0x00)
0 (0x00)
24 (0x18)
0 (0x00)
0 (0x00)
0 (0x00)
192 (0xC0)
1 (0x01)
224 (0xE0)
0 (0x00)
1 (0x01)
0 (0x00)
0 (0x00)
0 (0x00) ...
i = 18 (0x00000012)
src = 0x00000060

CTerrainTextureEntry::CTerrainTextureEntry (terraintextureentry.cpp:147)
this = (unavailable)
properties =
px = 0x3091C6F0 ->
m_pParent =
px = 0x308F1260 ->
m_pParent =
px = 0x00000000
pn =
pi_ = 0x00000000


m_BaseColor = 0 (0x00000000)
m_HasBaseColor = false
m_MovementClass = { (unsupported basic_string<char,char_traits<char> >) }
m_TextureAngle = 0.785398 (0x3F490FDB)
m_TextureSize = 32.000000 (0x42000000)
m_Groups = (unsupported vector<CTerrainGroup * >)

pn =
pi_ = 0x2F576698 ->
use_count_ = 3 (0x00000003)
weak_count_ = 1 (0x00000001)



m_BaseColor = 0 (0x00000000)
m_HasBaseColor = false
m_MovementClass = { (unsupported basic_string<char,char_traits<char> >) }
m_TextureAngle = 0.785398 (0x3F490FDB)
m_TextureSize = 32.000000 (0x42000000)
m_Groups = (unsupported vector<CTerrainGroup * >)

pn =
pi_ = 0x2F6161A8 ->
use_count_ = 3 (0x00000003)
weak_count_ = 1 (0x00000001)



path = 0x3091F5A8 ->
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = [8] { 47 ('/'), 47789, 64088, 12433, 61453, 47789, 61453, 47789 }

XeroFile =

m_Pointer = 0x15C3E050 -> [8] { 190, 1, 0, 0, 1, 0, 0, 0 }
m_ElementNameCount = 4 (0x00000004)
m_AttributeNameCount = 2 (0x00000002)
m_ElementPointer = 0x15C3E008 -> [8] { 9, 0, 0, 0, 109 ('m'), 97 ('a'), 116 ('t'), 101 ('e') }
m_AttributePointer = 0x15C3E03E -> [8] { 5, 0, 0, 0, 102 ('f'), 105 ('i'), 108 ('l'), 101 ('e') }

m_XMBBuffer =
px = 0x15C3E000 -> "XMB0"
pn =
pi_ = 0x3091FE08 ->
use_count_ = 2 (0x00000002)
weak_count_ = 1 (0x00000001)




el_textures = 3 (0x00000003)
at_name = 1 (0x00000001)
_children_83 =
Count = 2 (0x00000002)
m_Pointer = 0x15C3E068 -> [8] { 94 ('^'), 1, 0, 0, 3, 0, 0, 0 }
m_LastItemID = 1 (0x00000001)
m_LastPointer = 0x15C3E1C6 -> "H"

samplers = (unsupported vector<pair<CStr8,Path> >)
texAngle = 0.000000 (0x00000003)
el_texture = 2 (0x00000002)
el_tag = 4294967295 (0xFFFFFFFF)
root =
m_Pointer = 0x15C3E050 (see above)

at_file = 0 (0x00000000)
child =
m_Pointer = 0x15C3E1C6 (see above)

el_props = 4294967295 (0xFFFFFFFF)
alphamap =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 47 ('/')

el_material = 0 (0x00000000)
el_alphamap = 4294967295 (0xFFFFFFFF)
texSize = 0.000000 (0x15C3E156)
_i_83 = 3 (0x00000003)
textures_element =
m_Pointer = 0x15C3E156 -> "p"

_children_89 =
Count = 3 (0x00000003)
m_Pointer = 0x3091F4A8 -> "specTex"
m_LastItemID = 814856176 (0x3091B7F0)
m_LastPointer = 0x2F718650 -> "vg"

_i_89 = 3 (0x00000003)
path =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 47 ('/')

se =
Name = 0 (0x00000000)
Value = { (unsupported basic_string<char,char_traits<char> >) }

name = { (unsupported basic_string<char,char_traits<char> >) }
_children_95 =
Count = 2 (0x00000002)
m_Pointer = 0x15C3E16E -> [8] { 1, 0, 0, 0, 16, 0, 0, 0 }
m_LastItemID = 1 (0x00000001)
m_LastPointer = 0x15C3E186 -> [8] { 0, 0, 0, 0, 56 ('8'), 0, 0, 0 }

mat =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 47 ('/')

ret =
px = 0x3091B7F0 ->
m_pParent =
px = 0x3091B858 ->
m_pParent =
px = 0x00720061 ->
m_pParent =
px = 0x20656220 ->
m_pParent =
px = 0x00000000
pn =
pi_ = 0x00000000


m_BaseColor = 0 (0x00000000)
m_HasBaseColor = false
m_MovementClass = { (unsupported basic_string<char,char_traits<char> >) }
m_TextureAngle = 0.000000 (0x00000000)
m_TextureSize = 0.000000 (0x00000000)
m_Groups = (unsupported vector<CTerrainGroup * >)

pn =
pi_ = 0x206E7572 ->
use_count_ = 0 (0x00000000)
weak_count_ = 0 (0x00000000)



m_BaseColor = 1142976105 (0x44206E69)
m_HasBaseColor = (bool)0x4F
m_MovementClass = { (unsupported basic_string<char,char_traits<char> >) }
m_TextureAngle = 129675112.000000 (0x4CF755ED)
m_TextureSize = 2174727296647168.000000 (0x58F73CE5)
m_Groups = (unsupported vector<CTerrainGroup * >)

pn =
pi_ = 0x002F0074 ->
use_count_ = 33687066 (0x0202061A)
weak_count_ = 33687067 (0x0202061B)



m_BaseColor = 6619252 (0x00650074)
m_HasBaseColor = (bool)0x78
m_MovementClass = { (unsupported basic_string<char,char_traits<char> >) }
m_TextureAngle = 0.000000 (0x00700079)
m_TextureSize = 0.000000 (0x00730065)
m_Groups = (unsupported vector<CTerrainGroup * >)

pn =
pi_ = 0xBAADF00D ->
use_count_ = (unavailable - internal error)

weak_count_ = (unavailable - internal error)




m_BaseColor = 3131961357 (0xBAADF00D)
m_HasBaseColor = (bool)0x0D
m_MovementClass = { (unsupported basic_string<char,char_traits<char> >) }
m_TextureAngle = 2.000000 (0x40000000)
m_TextureSize = 0.000000 (0x00010001)
m_Groups = (unsupported vector<CTerrainGroup * >)

pn =
pi_ = 0x2F718650 (see above)


i = 3 (0x00000003)
texture =
m_Path =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 47 ('/')

m_Filter = 9987 (0x00002703)
m_WrapS = 10497 (0x00002901)
m_WrapT = 10497 (0x00002901)
m_Aniso = 2.000000 (0x40000000)

texptr =
px = 0x3091B7F0 (see above)
pn =
pi_ = 0x2F718650 (see above)



CTerrainTextureManager::AddTexture (terraintexturemanager.cpp:96)
this = (unavailable)
props = 0x0012F908 ->
px = 0x3091C6F0 (see above)
pn =
pi_ = 0x2F6161A8 (see above)


path = 0x0012F7CC ->
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = [8] { 63672, 18, 26267, 99 ('c'), 0, 0, 63684, 18 }

entry = 0x0012F7CC (see above)

CTerrainTextureManager::LoadTextures (terraintexturemanager.cpp:123)
this = (unavailable)
props = 0x0012F908 (see above)
path = 0x0012F9FC ->
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = [8] { 47 ('/'), 0, 37192, 12432, 64124, 18, 432, 330 }

pathnames = (unsupported vector<Path >)
i = 0 (0x00000000)

CTerrainTextureManager::RecurseDirectory (terraintexturemanager.cpp:163)
this = (unavailable)
parentProps = 0x0012F9CC ->
px = 0x308F1260 (see above)
pn =
pi_ = 0x2F576698 (see above)


path = 0x0012F9FC (see above)
props =
px = 0x3091C6F0 (see above)
pn =
pi_ = 0x2F6161A8 (see above)


subdirectoryNames = (unsupported vector<Path >)
pathname =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 47 ('/')

i = 0 (0x00000000)
subdirectoryPath =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 63996


CTerrainTextureManager::RecurseDirectory (terraintexturemanager.cpp:160)
this = (unavailable)
parentProps = 0x0012FA74 ->
px = 0x308F1260 (see above)
pn =
pi_ = 0x2F576698 (see above)


path = 0x0012FA7C ->
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = "/䀸爍᭣ﱬ㻃d"

props =
px = 0x308F1260 (see above)
pn =
pi_ = 0x2F576698 (see above)


subdirectoryNames = (unsupported vector<Path >)
pathname =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 47 ('/')

i = 0 (0x00000000)
subdirectoryPath =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 47 ('/')


CTerrainTextureManager::LoadTerrainTextures (terraintexturemanager.cpp:169)
this = (unavailable)
rootProps =
px = 0x308F1260 (see above)
pn =
pi_ = 0x2F576698 (see above)



MemFunThunk<WaterManager> (loaderthunks.h:60)
param = 0x0EB634A8
__formal = 0.01 (0x3F847AE147AE147B)

LDR_ProgressiveLoad (loader.cpp:228)
time_budget = 0.01 (0x3F847AE147AE147B)
description = 0x0012FB9C -> [8] { 16500, 36853, 47069, 16440, 64440, 18, 43813, 73 ('I') }
max_chars = 100 (0x00000064)
progress_percent = 0x0012FB4C -> 1244008 (0x0012FB68)
time_left = 0.01 (0x3F847AE147AE147B)
progress = 0 (0x0000000000000000)
t0 = 24.7182 (0x4038B7DDFBC21FDF)
status = 918870602 (0x36C4DA4A)
estimated_duration = 0.06 (0x3FAEB851EB851EB8)

ProgressiveLoad (main.cpp:235)
description = [100]
16500
36853
47069
16440
64440
18
43813
73 ('I')
39552
224
16500
36853 ...
profile2__ =
m_Name = 0x0065E648 -> "progressive load"

progress_percent = 1244008 (0x0012FB68)
e =



(exception)
m_msg = 0x7C90D8BA -> [8] { 194, 8, 0, 144, 184, 166, 0, 0 }





Frame (main.cpp:347)
realTimeSinceLastFrame = 0.023526 (0x3CC0B8BE)
need_update = true
profile2__ =
m_Name = 0x0065E76C -> "frame"

need_render = true
profile2__ =
m_Name = 0x4038B7DC -> (unavailable - internal error)


down = [3] { 0.000000 (0x0063669B), 0.000000 (0x145043E3), 2.886222 (0x4038B7DC) }
profile2__ =
m_Name = 0x4038B7DC (see above)

profile2__ =
m_Name = 0x4038B7DC (see above)

profile2__ =
m_Name = 0x4038B7DC (see above)


RunGameOrAtlas (main.cpp:529)
argc = 1 (0x00000001)
argv = (unavailable)
args =
m_Args = (unsupported vector<pair<CStr8,CStr8> >)
m_Arg0 =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 92 ('\')


paths =
m_root =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 1476

m_rdata =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 65535

m_gameData =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 0

m_userData =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 37669

m_config =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 41936

m_cache =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 0

m_logs =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 617


replay =
m_Stream = 0x7C94BAFC -> (basic_istream<char,char_traits<char> >)

mod =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 65204

zip =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 1843

paths =
m_root =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 1476

m_rdata =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 65535

m_gameData =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 0

m_userData =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 37669

m_config =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 41936

m_cache =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 0

m_logs =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 617


builder =
m_VFS =
px = 0x00E00000 -> (IVFS)
pn =
pi_ = 0x40000060 ->
use_count_ = (unavailable - internal error)

weak_count_ = (unavailable - internal error)




m_Files = (unsupported vector<Path >)
m_TempDir =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 65040



main (main.cpp:572)
argc = 1 (0x00000001)
argv = 0x00E06430 -> 0x00E078C0 -> "C:\Documents and Settings\Ben\My Documents\Github\0ad\build\workspaces\vc2010\..\..\..\binaries\system\pyrogenesis.exe"

wmain (wseh.cpp:380)
argc = 1 (0x00000001)
argv = 0x00E054B0 -> 0x00E054B8 -> "C:\Documents and Settings\Ben\My Documents\Github\0ad\build\workspaces\vc2010\..\..\..\binaries\system\pyrogenesis.exe"
utf8_argv = (unsupported vector<char * >)
ret = 14701744 (0x00E054B0)
utf8 = (unsupported basic_string<char,char_traits<char> >)

CallStartupWithinTryBlock (wseh.cpp:397)
ret = 32 (0x00000020)

RegisterWaitForInputIdle (:0)


errno = 0 (No error reported here)
OS error = 0 (no error code was set)

and I get the same crash after forcing renderpath to "fixed".

Link to comment
Share on other sites

Thanks for testing! The first error is because you used smoothlos=true without GLSL support, when there is no equivalent ARB shader available (yet). Just like the GPUskinning option, it's an experimental feature that is marked "requires GLSL". That is, the crashing is by design, as the ARB part of the equation is still missing.

As for the second error, it's a real bug, but I think I know how to fix it.

Link to comment
Share on other sites

Modelmapping has been committed to SVN. Fingers crossed.

(y)

One little thing I forgot to mention when reviewing, I think the following files should go in a separate directory, mostly because they have different licensing and aren't written by us (nor copyright Wildfire Games):

  • source/graphics/mikktspace.cpp
  • source/graphics/mikktspace.h
  • source/graphics/weldmesh.cpp
  • source/graphics/weldmesh.h

Anyone else feel similarly?

Link to comment
Share on other sites

I do! They should probably go somewhere under the "lib" directory...

I must admit I haven't spent any time thinking about those things actually... and now that you mention it, there might be a (small) file or two without the usual licensing blurb at the top. :ph34r:

Edit: The "lib" directory not be the right place. Plus, that update-workspaces script is driving me up the wall.

Link to comment
Share on other sites

As for Ao baking, I would need to re-map the model to get the AO right.

I saw something about using two UV maps on the same model...

Yes, you need to add a second UV set that doesn't overlap itself anywhere. It's really easy to do in Blender, and we should eventually automate it with a Python script or something.

Btw, smoothlos has been committed. I'll do the other two patches tomorrow.

Link to comment
Share on other sites

Hi wanted to say that I really like the waving trees. I haven't looked at the other effects yet (is there a demo map with them on them?). But I did notice a few things. After the smooth LOS update the tests broke (They still worked I think after the other massive update AO, wavy trees etc...)


Running 283 tests........................Singleton.h(53): Assertion failed: "ms_singleton"
Assertion failed: "ms_singleton"
Location: Singleton.h:53 (GetSingleton)
Call stack:
(0x8d9d2a) ./test() [0x8d9d2a]
(0x88b751) ./test() [0x88b751]
(0x88b94d) ./test() [0x88b94d]
(0x88c612) ./test() [0x88c612]
(0x7041c7) ./test() [0x7041c7]
(0x457ef6) ./test() [0x457ef6]
(0x431aa4) ./test() [0x431aa4]
(0x43a988) ./test() [0x43a988]
(0x41c0ad) ./test() [0x41c0ad]
(0x3e29021735) /lib64/libc.so.6(__libc_start_main+0xf5) [0x3e29021735]
(0x42c3d5) ./test() [0x42c3d5]
errno = 0 (No error reported here)
OS error = ?

(C)ontinue, (S)uppress, (B)reak, Launch (D)ebugger, or (E)xit?

Also when I first updated to AO and wavy trees I got a core dump because I had previously enabled glsl without enabling gentangents. That is I had gentangents="true" in my config file without doing anything about the gentangents. Why are there two seperate enables here? Is it for the gpuskinning? I think it shouldn't crash if the config is messed up but notify the user and automatically change the config to a setting that would work. Otherwise keep up the great work. Looking forward to seeing all the new stuff in action.

Link to comment
Share on other sites

I can build at evening (~15-16 UTC) if someone will not do this earlier.

Thx fcxSanya tried a local build myself last night VSE2010 complained about


mikktspace.cpp
mikktspace.h
weldmesh.cpp
weldmesh.h

apart from my usual wxWidgets errors.So someone may have to modify myconid's code for Windows ;)

Enjoy the Choice :)

Link to comment
Share on other sites

Thx fcxSanya tried a local build myself last night VSE2010 complained about


mikktspace.cpp
mikktspace.h
weldmesh.cpp
weldmesh.h

apart from my usual wxWidgets errors.So someone may have to modify myconid's code for Windows ;)

Enjoy the Choice :)

What do you mean it complained? Errors or warnings would be helpful. For my part it built just fine in VS2008. Make sure you run update-workspaces.bat since there have been source files added.

Link to comment
Share on other sites

Thanks, howlingflute. I'll look into that error (it's probably nothing major). There's been some discussion about the preferglsl/gentangents before. While I believe the gentangents option should be kept separate, I'll do something about the crash.

Loki1950, I'm sure people have already tested it on Windows before. Did you run update-workspaces before compiling?

Edit: yeah, what historic_bruno said.

Edit2: howlingflute, the roman CC should display the effects in GLSL mode. Just committed a simple fix for the crashing - the "quality" setting is now set to 0 by default, so it needs to be set to 10 to display the effects. Regarding the error, can you please post gdb output? Found the issue (doh!).

Link to comment
Share on other sites

About howlingflute's error:

The LOSTexture code needs access to g_Renderer variable, which is global. However, in the test files the renderer isn't instantiated anywhere, hence the error when the value is accessed.

Not sure if the renderer object can be instantiated on its own, just to please this test. I'll see what can be done, but I'll ask people to be a little patient...

Edit: OK!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...