Jump to content

Previewing a map in the game setup screen.


Recommended Posts

These maps throw errors that files can’t be found (celtic war dogs, easy to reproduce):

  • Arcadia II
    Gallic Fields
    The Massacre of Delphi

Yeah, I can fix those.

  • file names aren’t optimal:
    you use roman numbers in filenames(not always), but arabic(12345…, not always) in the descriptions, should be swapped

Problem is, the in-game list will not properly identify the roman numerals as, well, numerals. Best to just use Arabic numbers for now.

I think it would be better to name demo maps with "demo_"-prefix and sandbox maps with "sandbox_" prefix (so they stick together)

Agreed.

Link to comment
Share on other sites

I'd prefer closer screenshots for scenarios, selected to show close details of each map. In other words not rushed through in a huge batch or by some automated process :)

it’s a matter of taste, but I’ll try some shots

the batch process involved was: cropping, scaling, filling up to a 4:3 res, scaling down and saving.

even for manually taken closeups some of those steps are neccessary, I don’t want to do that for every pic by hand ;)

Are those good? http://luziferius.lu.funpic.de/0ad/Scenarios_cinematic/

Wouldn't it be easier to store them in subfolders?

when it does not need programming, yes

otherwise renaming is easier

Edited by luziferius
Link to comment
Share on other sites

There are still errors on some systems with the current preview textures: http://www.wildfiregames.com/forum/index.php?showtopic=16309

Edit: confirmed I get debug warnings too, with a debug build:


Function call failed: return value was -100113 (Case 13)
Location: ogl_tex.cpp:506 (OglTex_validate)

Call stack:

OglTex_validate (ogl_tex.cpp:506)
h = 300 (0x0000012C)
w = 400 (0x00000190)
ot = 0x04401FE0 ->
t =
data =
px = 0x15156000 -> "DDS |"
pn =
pi_ = 0x05628100 ->
use_count_ = 2 (0x00000002)
weak_count_ = 1 (0x00000001)



dataSize = 60128 (0x0000EAE0)
ofs = 128 (0x00000080)
w = 400 (0x00000190)
h = 300 (0x0000012C)
bpp = 4 (0x00000004)
flags = 129 (0x00000081)

id = 39 (0x00000027)
fmt = 0 (0x00000000)
int_fmt = 0 (0x00000000)
state =
filter = 9987 (0x00002703)
wrap_s = 10497 (0x00002901)
wrap_t = 10497 (0x00002901)
anisotropy = 1.000000 (0x3F800000)

q_flags = [8] { 32 (0x20), 0 (0x00), 2 (0x02), 0 (0x00), 0 (0x00), 0 (0x00), 0 (0x00), 0 (0x00) }
tmu = 0 (0x00)
flags = 2 (0x0002)


warn_if_invalid (h_mgr.cpp:361)
hd = 0x04401FA0 ->
h = 1559494703 (0x000000005CF4002F)
key = 1244230749 (0x4A29745D)
refs = 1 (0x00000001)
keep_open = 2 (0x00000002)
unique = 2 (0x00000002)
disallow_reload = 2 (0x00000002)
type = 0x01DC8CD8 ->
init = 0x01800530 -> (OglTex_init)
reload = 0x018006E0 -> (OglTex_reload)
dtor = 0x01800660 -> (OglTex_dtor)
validate = 0x018008A0 -> (OglTex_validate)
to_string = 0x01800C50 -> (OglTex_to_string)
user_size = 64 (0x00000040)
name = 0x01C9E9FC -> "OglTex"

num_derefs = 0 (0x00000000)
pathname =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = [8] { 47 ('/'), 0, 24576, 5397, 33024, 1378, 60128, 0 }

user = [100]
[8] { 0 (0x00), 96 (0x60), 21 (0x15), 21 (0x15), 0 (0x00), 129 (0x81), 98 (0x62), 5 (0x05) }
96 (0x60)
21 (0x15)
21 (0x15)
0 (0x00)
129 (0x81)
98 (0x62)
5 (0x05)
224 (0xE0)
234 (0xEA)
0 (0x00)
0 (0x00)
128 (0x80)
0 (0x00)
0 (0x00)
0 (0x00) ...

err = (uninitialized)
start = 0xCCCCCCCC
end = 0xCCCCCCCC
vtbl = 0x01DC8CD8 (see above)

call_init_and_reload (h_mgr.cpp:448)
h = 1559494703 (0x000000005CF4002F)
type = 0x01DC8CD8 (see above)
hd = 0x04401FA0 (see above)
vfs = 0x005BC618 ->
px = 0x005BE3B0 -> (IVFS)
pn =
pi_ = 0x005FB090 ->
use_count_ = 4 (0x00000004)
weak_count_ = 1 (0x00000001)



pathname = 0x0037E9DC ->
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = [8] { 47 ('/'), (uninitialized), (uninitialized), (uninitialized), (uninitialized), (uninitialized), 1, 0 }

init_args = 0x0037E8F0 -> 0x0037E944 -> [8] { 0, 0, 0, 0, 0, 0, 0, 0 }
err = 0 (0x0000000000000000)
vtbl = 0x01DC8CD8 (see above)

alloc_new_handle (h_mgr.cpp:489)
type = 0x01DC8CD8 (see above)
vfs = 0x005BC618 (see above)
pathname = 0x0037E9DC (see above)
key = 1244230749 (0x4A29745D)
flags = 17 (0x00000011)
init_args = 0x0037E8F0 (see above)
hd = 0x04401FA0 (see above)
err = (uninitialized)
idx = 46 (0x0000002E)
tag = 1559494656 (0x000000005CF40000)
h = 1559494703 (0x000000005CF4002F)

h_alloc (h_mgr.cpp:536)
type = 0x01DC8CD8 (see above)
vfs = 0x005BC618 (see above)
pathname = 0x0037E9DC (see above)
flags = 17 (0x00000011)
key = 1244230749 (0x4A29745D)
s = (H_ScopedLock)
h = 0 (0x0000000000000000)
args = 0x0037E944 (see above)

ogl_tex_load (ogl_tex.cpp:545)
vfs = 0x005BC618 (see above)
pathname = 0x0037E9DC (see above)
flags = 17 (0x00000011)
wrapped_tex = 0x00000000

CTextureManagerImpl::LoadTexture (texturemanager.cpp:177)
this = 0x005BC618 (see above)
texture = 0x0037EAA0 ->
px = 0x053E5000 ->
m_Properties =
m_Path =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = [8] { 47 ('/'), 52685, 9987, 0, 10497, 0, 10497, 0 }

m_Filter = 9987 (0x00002703)
m_WrapS = 10497 (0x00002901)
m_WrapT = 10497 (0x00002901)
m_Aniso = 1.000000 (0x3F800000)

m_Handle = 65537 (0x0000000000010001)
m_BaseColour = 0 (0x00000000)
m_State = PREFETCH_NEEDS_LOADING
m_TextureManager = 0x005BC618 (see above)
m_Self =
px = 0x053E5000 (see above)
pn =
pi_ = 0x05606F38 ->
use_count_ = 4 (0x00000004)
weak_count_ = 10 (0x0000000A)




pn =
pi_ = 0x05606F38 (see above)


path = 0x0037E9DC (see above)
profile2__ =
m_Name = 0x01BE7E30 -> "load texture"

flags = (uninitialized)
h = (uninitialized)
filter = (uninitialized)

CTextureManagerImpl::TryLoadingCached (texturemanager.cpp:266)
this = 0x005BC618 (see above)
texture = 0x0037EAA0 (see above)
hash =
m_Digest = [4] { 1732584193 (0x67452301), 4023233417 (0xEFCDAB89), 2562383102 (0x98BADCFE), 271733878 (0x10325476) }
m_Buf = [64]
3 (0x03)
0 (0x00)
0 (0x00)
0 (0x00)
2 (0x02)
0 (0x00)
0 (0x00)
0 (0x00)
2 (0x02)
0 (0x00)
0 (0x00)
0 (0x00)
3 (0x03)
0 (0x00)
0 (0x00)
0 (0x00) ...
m_BufLen = 32 (0x00000020)
m_InputLen = 32 (0x0000000000000020)

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

version = 1 (0x00000001)
ret = 0 (0x0000000000000000)

CTexture::TryLoad (texturemanager.cpp:548)
self =
px = 0x053E5000 (see above)
pn =
pi_ = 0x05606F38 (see above)


this = 0x053E5000 (see above)

CTexture::GetHandle (texturemanager.cpp:537)
this = 0x053E5000 (see above)

CShaderProgram::BindTexture (shaderprogram.cpp:710)
this = 0x053A2A28 ->
m_IsValid = true
m_StreamFlags = 9 (0x00000009)
m_ValidStreams = 0 (0x00000000)

id = 0x01C85290 -> "tex"
tex =
px = 0x053E5000 (see above)
pn =
pi_ = 0x05606F38 (see above)



GUIRenderer::Draw (guirenderer.cpp:334)
data = (unsupported vector<float >)
TexCoords =
left = (uninitialized)
top = (uninitialized)
right = (uninitialized)
bottom = (uninitialized)

Verts =
left = (uninitialized)
top = (uninitialized)
right = (uninitialized)
bottom = (uninitialized)

shader =
px = 0x053A2A28 (see above)
pn =
pi_ = 0x05256F80 ->
use_count_ = 3 (0x00000003)
weak_count_ = 1 (0x00000001)



cit = (unsupported _Vector_const_iterator<_Vector_val<GUIRenderer::SDrawCall > >)
Calls = 0x055598D8 ->
(unsupported vector<GUIRenderer::SDrawCall >)

Z = 30.000000 (0x41F00000)
matrix =
_11 = 0.001953 (0x3B000000)
_21 = 0.000000 (0x00000000)
_31 = 0.000000 (0x00000000)
_41 = 0.000000 (0x00000000)
_12 = 0.000000 (0x00000000)
_22 = -0.002604 (0xBB2AAAAB)
_32 = 0.000000 (0x00000000)
_42 = 0.000000 (0x00000000)
_13 = 0.000000 (0x00000000)
_23 = 0.000000 (0x00000000)
_33 = -0.001998 (0xBB02F0E9)
_43 = 0.000000 (0x00000000)
_14 = -1.000000 (0xBF800000)
_24 = 1.000000 (0x3F800000)
_34 = 1.000000 (0x3F7FFFFF)
_44 = 1.000000 (0x3F800000)
_data = [16]
0.001953 (0x3B000000)
0.000000 (0x00000000)
0.000000 (0x00000000)
0.000000 (0x00000000)
0.000000 (0x00000000)
-0.002604 (0xBB2AAAAB)
0.000000 (0x00000000)
0.000000 (0x00000000)
0.000000 (0x00000000)
0.000000 (0x00000000)
-0.001998 (0xBB02F0E9)
0.000000 (0x00000000) ...
_data2d = [4]
[4] { 0.001953 (0x3B000000), 0.000000 (0x00000000), 0.000000 (0x00000000), 0.000000 (0x00000000) }
[4] { 0.000000 (0x00000000), -0.002604 (0xBB2AAAAB), 0.000000 (0x00000000), 0.000000 (0x00000000) }
[4] { 0.000000 (0x00000000), 0.000000 (0x00000000), -0.001998 (0xBB02F0E9), 0.000000 (0x00000000) }
[4] { -1.000000 (0xBF800000), 1.000000 (0x3F800000), 1.000000 (0x3F7FFFFF), 1.000000 (0x3F800000) }


CGUISpriteInstance::Draw (cguisprite.cpp:29)
this = 0x055598B8 ->
m_SpriteName = { (unsupported basic_string<char,char_traits<char> >) }
m_DrawCallCache =
(unsupported vector<GUIRenderer::SDrawCall >)

m_CachedSize =
left = 600.000000 (0x44160000)
top = 59.000000 (0x426C0000)
right = 998.000000 (0x44798000)
bottom = 357.000000 (0x43B28000)

m_CachedCellID = 0 (0x00000000)

Size =
left = 600.000000 (0x44160000)
top = 59.000000 (0x426C0000)
right = 998.000000 (0x44798000)
bottom = 357.000000 (0x43B28000)

CellID = 0 (0x00000000)
Sprites = 0x052BDB34 -> (unsupported map<CStr8,CGUISprite >)
Z = 30.000000 (0x41F00000)

CGUI::DrawSprite (cgui.cpp:480)
this = 0x052BDA88 ->
m_ScriptObject = 0x05C55078 -> (JSObject)
m_MousePos =
x = 0.000000 (0x00000000)
y = 0.000000 (0x00000000)

m_MouseButtons = 0 (0x00000000)
m_Tooltip =
m_State = 1 (0x00000001)
m_PreviousObject = 0x053AA870 ->
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 = 0x053AA5B8 ->
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 = 0x052BDA88 (see above)
m_ScriptHandlers = (unsupported map<CStr8,JSObject * * >)
m_JSObject = 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 = 0x052BDA88 (see above)
m_ScriptHandlers = (unsupported map<CStr8,JSObject * * >)
m_JSObject = 0x05C55190 -> (JSObject)

m_PreviousTooltipName = { (unsupported basic_string<char,char_traits<char> >) }
m_PreviousMousePos =
x = 0.000000 (0x00000000)
y = 0.000000 (0x00000000)

m_Time = -6.27744e+066 (0xCDCDCDCDCDCDCDCD)
m_IsIconTooltip = (bool)0xCD

m_PreDefinedColors = (unsupported map<CStr8,CColor >)
m_BaseObject = 0x053AA5B8 (see above)
m_FocusedObject = 0x0551D5F8 ->
m_CachedActualSize =
left = 111.615997 (0x42DF3B64)
(too much output; skipping to next top-level symbol)

m_Name = { (unsupported basic_string<char,char_traits<char> >) }
m_Children = (unsupported vector<IGUIObject * >)
m_pParent = 0x0555A398 ->
m_CachedActualSize =
left = 111.615997 (0x42DF3B64)
top = 427.000000 (0x43D58000)
right = 286.720001 (0x438F5C29)
bottom = 455.000000 (0x43E38000)

m_Name = { (unsupported basic_string<char,char_traits<char> >) }
m_Children = (unsupported vector<IGUIObject * >)
m_pParent = 0x053AA870 (see above)
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 = 0x052BDA88 (see above)
m_ScriptHandlers = (unsupported map<CStr8,JSObject * * >)
m_JSObject = 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 = 0x052BDA88 (see above)
m_ScriptHandlers = (unsupported map<CStr8,JSObject * * >)
m_JSObject = 0x05C6C258 -> (JSObject)

m_pAllObjects = (unsupported map<CStr8,IGUIObject * >)
m_InternalNameNumber = 31 (0x0000001F)
m_ObjectTypes = (unsupported map<CStr8,IGUIObject * (__cdecl*)(void) >)
m_HotkeyObjects = (unsupported map<CStr8,vector<IGUIObject * > >)
m_Sprites = (unsupported map<CStr8,CGUISprite >)
m_Styles = (unsupported map<CStr8,SGUIStyle >)
m_ScrollBarStyles = (unsupported map<CStr8,SGUIScrollBarStyle >)
m_Icons = (unsupported map<CStr8,SGUIIcon >)

Sprite = 0x055598B8 (see above)
CellID = 0 (0x00000000)
Z = 0x0037ED88 -> 30.000000 (0x41F00000)
Rect = 0x0555A570 ->
left = 600.000000 (0x44160000)
top = 59.000000 (0x426C0000)
right = 998.000000 (0x44798000)
bottom = 357.000000 (0x43B28000)

__formal = 0x0037ED1C ->
left = 0.000000 (0x00000000)
top = 0.000000 (0x00000000)
right = 0.000000 (0x00000000)
bottom = 0.000000 (0x00000000)


CImage::Draw (cimage.cpp:57)
this = 0x0555A568 ->

m_CachedActualSize =
left = 600.000000 (0x44160000)
top = 59.000000 (0x426C0000)
right = 998.000000 (0x44798000)
bottom = 357.000000 (0x43B28000)

m_Name = { (unsupported basic_string<char,char_traits<char> >) }
m_Children = (unsupported vector<IGUIObject * >)
m_pParent = 0x0555A480 ->
m_CachedActualSize =
left = 599.000000 (0x4415C000)
top = 58.000000 (0x42680000)
right = 999.000000 (0x4479C000)
bottom = 358.000000 (0x43B30000)

m_Name = { (unsupported basic_string<char,char_traits<char> >) }
m_Children = (unsupported vector<IGUIObject * >)
m_pParent = 0x053AA870 (see above)
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 = 0x052BDA88 (see above)
m_ScriptHandlers = (unsupported map<CStr8,JSObject * * >)
m_JSObject = 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 = 0x052BDA88 (see above)
m_ScriptHandlers = (unsupported map<CStr8,JSObject * * >)
m_JSObject = 0x05C91398 -> (JSObject)



GUI<int>::RecurseObject (guiutil.h:320)
RR = 1 (0x00000001)
pObject = 0x0555A568 (see above)
pFunc = 0x01766A10 -> (IGUIObject::`vcall'{24}')
it = (unsupported _Vector_iterator<_Vector_val<IGUIObject * > >)

GUI<int>::RecurseObject (guiutil.h:326)
RR = 1 (0x00000001)
pObject = 0x0555A480 (see above)
pFunc = 0x01766A10 (see above)
it = (unsupported _Vector_iterator<_Vector_val<IGUIObject * > >)

GUI<int>::RecurseObject (guiutil.h:326)
RR = 1 (0x00000001)
pObject = 0x053AA870 (see above)
pFunc = 0x01766A10 (see above)
it = (unsupported _Vector_iterator<_Vector_val<IGUIObject * > >)

GUI<int>::RecurseObject (guiutil.h:326)
RR = 1 (0x00000001)
pObject = 0x053AA5B8 (see above)
pFunc = 0x01766A10 (see above)
it = (unsupported _Vector_iterator<_Vector_val<IGUIObject * > >)

CGUI::Draw (cgui.cpp:459)
this = 0x052BDA88 (see above)

CGUIManager::Draw (guimanager.cpp:280)
it = (_Vector_iterator<_Vector_val<CGUIManager::SGUIPage > >)
this = 0x052A7100 ->
m_PageStack = (vector<CGUIManager::SGUIPage >)
m_CurrentGUI =
px = 0x00000000
pn =
pi_ = 0x00000000


m_ScriptInterface = 0x005B7DC0 ->
m = (auto_ptr<ScriptInterface_impl>)


profile2__ =
m_Name = 0x01C5EAAC -> "gui"

profile2gpu__ =
m_Name = 0x01C5EAB0 -> "gui"


Render (gamesetup.cpp:237)
skycol =
r = 0.000000 (0x00000000)
g = 0.000000 (0x00000000)
b = 0.000000 (0x00000000)
a = 1.000000 (0x3F800000)

profile2__ =
m_Name = 0x01BBDC44 -> "render"

skystring = { (unsupported basic_string<char,char_traits<char> >) }

Frame (main.cpp:415)
profile2__ =
m_Name = 0xCCCCCCCC

realTimeSinceLastFrame = 0.021060 (0x3CAC851B)
need_update = true
time = 4.30296 (0x40113639E3E17766)
profile2__ =
m_Name = 0x01B1EC78 -> "frame"

need_render = true
is_building_archive = false

RunGameOrAtlas (main.cpp:529)
argc = 1 (0x00000001)
argv = 0x005B7BB0 -> 0x005BA8D0 -> "C:\Users\Ben\devel\ps\binaries\system\pyrogenesis_dbg.exe"
ran_atlas = false
args =
m_Args = (unsupported vector<pair<CStr8,CStr8> >)
m_Arg0 =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 92 ('\')


res = 2.94811e-010 (0x3DF44260277FE9B9)

main (main.cpp:572)
argc = 1 (0x00000001)
argv = 0x005B7BB0 (see above)

wmain (wseh.cpp:380)
i = 1 (0x00000001)
argc = 1 (0x00000001)
argv = 0x005B8D48 -> 0x005B8D50 -> "C:\Users\Ben\devel\ps\binaries\system\pyrogenesis_dbg.exe"
utf8_argv = (unsupported vector<char * >)
ret = (uninitialized)

wmainCRTStartup (crtexe.c:371)

CallStartupWithinTryBlock (wseh.cpp:396)
ret = (uninitialized)

wseh_EntryPoint (wseh.cpp:424)

RtlInitializeExceptionChain (:0)

RtlInitializeExceptionChain (:0)


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

Link to comment
Share on other sites

I've been looking at it, and I think it would make more sense to put the drop downs below the preview image, wedged between it and the map description field. Anyone?

It is something I feel is unnatural in the current interface; having to look at the left to adjust the choice, and seeing the resulting change on the right (with a larger monitor this distance effect gets worse). So, yes, I would agree to put the drop down where the action is :) There appears to be plenty of space since most map descriptions are quite short.

  • Like 1
Link to comment
Share on other sites

I've been looking at it, and I think it would make more sense to put the drop downs below the preview image, wedged between it and the map description field. Anyone?

This would make the central area more empty which is not good for now. But we are going to add more options so don't worry.

Link to comment
Share on other sites

  • 2 weeks later...

There are still errors on some systems with the current preview textures: http://www.wildfiregames.com/forum/index.php?showtopic=16309

Edit: confirmed I get debug warnings too, with a debug build:


Function call failed: return value was -100113 (Case 13)
Location: ogl_tex.cpp:506 (OglTex_validate)

Call stack:

OglTex_validate (ogl_tex.cpp:506)
h = 300 (0x0000012C)
w = 400 (0x00000190)
ot = 0x04401FE0 ->
t =
data =
px = 0x15156000 -> "DDS |"
pn =
pi_ = 0x05628100 ->
use_count_ = 2 (0x00000002)
weak_count_ = 1 (0x00000001)



dataSize = 60128 (0x0000EAE0)
ofs = 128 (0x00000080)
w = 400 (0x00000190)
h = 300 (0x0000012C)
bpp = 4 (0x00000004)
flags = 129 (0x00000081)

id = 39 (0x00000027)
fmt = 0 (0x00000000)
int_fmt = 0 (0x00000000)
state =
filter = 9987 (0x00002703)
wrap_s = 10497 (0x00002901)
wrap_t = 10497 (0x00002901)
anisotropy = 1.000000 (0x3F800000)

q_flags = [8] { 32 (0x20), 0 (0x00), 2 (0x02), 0 (0x00), 0 (0x00), 0 (0x00), 0 (0x00), 0 (0x00) }
tmu = 0 (0x00)
flags = 2 (0x0002)


warn_if_invalid (h_mgr.cpp:361)
hd = 0x04401FA0 ->
h = 1559494703 (0x000000005CF4002F)
key = 1244230749 (0x4A29745D)
refs = 1 (0x00000001)
keep_open = 2 (0x00000002)
unique = 2 (0x00000002)
disallow_reload = 2 (0x00000002)
type = 0x01DC8CD8 ->
init = 0x01800530 -> (OglTex_init)
reload = 0x018006E0 -> (OglTex_reload)
dtor = 0x01800660 -> (OglTex_dtor)
validate = 0x018008A0 -> (OglTex_validate)
to_string = 0x01800C50 -> (OglTex_to_string)
user_size = 64 (0x00000040)
name = 0x01C9E9FC -> "OglTex"

num_derefs = 0 (0x00000000)
pathname =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = [8] { 47 ('/'), 0, 24576, 5397, 33024, 1378, 60128, 0 }

user = [100]
[8] { 0 (0x00), 96 (0x60), 21 (0x15), 21 (0x15), 0 (0x00), 129 (0x81), 98 (0x62), 5 (0x05) }
96 (0x60)
21 (0x15)
21 (0x15)
0 (0x00)
129 (0x81)
98 (0x62)
5 (0x05)
224 (0xE0)
234 (0xEA)
0 (0x00)
0 (0x00)
128 (0x80)
0 (0x00)
0 (0x00)
0 (0x00) ...

err = (uninitialized)
start = 0xCCCCCCCC
end = 0xCCCCCCCC
vtbl = 0x01DC8CD8 (see above)

call_init_and_reload (h_mgr.cpp:448)
h = 1559494703 (0x000000005CF4002F)
type = 0x01DC8CD8 (see above)
hd = 0x04401FA0 (see above)
vfs = 0x005BC618 ->
px = 0x005BE3B0 -> (IVFS)
pn =
pi_ = 0x005FB090 ->
use_count_ = 4 (0x00000004)
weak_count_ = 1 (0x00000001)



pathname = 0x0037E9DC ->
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = [8] { 47 ('/'), (uninitialized), (uninitialized), (uninitialized), (uninitialized), (uninitialized), 1, 0 }

init_args = 0x0037E8F0 -> 0x0037E944 -> [8] { 0, 0, 0, 0, 0, 0, 0, 0 }
err = 0 (0x0000000000000000)
vtbl = 0x01DC8CD8 (see above)

alloc_new_handle (h_mgr.cpp:489)
type = 0x01DC8CD8 (see above)
vfs = 0x005BC618 (see above)
pathname = 0x0037E9DC (see above)
key = 1244230749 (0x4A29745D)
flags = 17 (0x00000011)
init_args = 0x0037E8F0 (see above)
hd = 0x04401FA0 (see above)
err = (uninitialized)
idx = 46 (0x0000002E)
tag = 1559494656 (0x000000005CF40000)
h = 1559494703 (0x000000005CF4002F)

h_alloc (h_mgr.cpp:536)
type = 0x01DC8CD8 (see above)
vfs = 0x005BC618 (see above)
pathname = 0x0037E9DC (see above)
flags = 17 (0x00000011)
key = 1244230749 (0x4A29745D)
s = (H_ScopedLock)
h = 0 (0x0000000000000000)
args = 0x0037E944 (see above)

ogl_tex_load (ogl_tex.cpp:545)
vfs = 0x005BC618 (see above)
pathname = 0x0037E9DC (see above)
flags = 17 (0x00000011)
wrapped_tex = 0x00000000

CTextureManagerImpl::LoadTexture (texturemanager.cpp:177)
this = 0x005BC618 (see above)
texture = 0x0037EAA0 ->
px = 0x053E5000 ->
m_Properties =
m_Path =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = [8] { 47 ('/'), 52685, 9987, 0, 10497, 0, 10497, 0 }

m_Filter = 9987 (0x00002703)
m_WrapS = 10497 (0x00002901)
m_WrapT = 10497 (0x00002901)
m_Aniso = 1.000000 (0x3F800000)

m_Handle = 65537 (0x0000000000010001)
m_BaseColour = 0 (0x00000000)
m_State = PREFETCH_NEEDS_LOADING
m_TextureManager = 0x005BC618 (see above)
m_Self =
px = 0x053E5000 (see above)
pn =
pi_ = 0x05606F38 ->
use_count_ = 4 (0x00000004)
weak_count_ = 10 (0x0000000A)




pn =
pi_ = 0x05606F38 (see above)


path = 0x0037E9DC (see above)
profile2__ =
m_Name = 0x01BE7E30 -> "load texture"

flags = (uninitialized)
h = (uninitialized)
filter = (uninitialized)

CTextureManagerImpl::TryLoadingCached (texturemanager.cpp:266)
this = 0x005BC618 (see above)
texture = 0x0037EAA0 (see above)
hash =
m_Digest = [4] { 1732584193 (0x67452301), 4023233417 (0xEFCDAB89), 2562383102 (0x98BADCFE), 271733878 (0x10325476) }
m_Buf = [64]
3 (0x03)
0 (0x00)
0 (0x00)
0 (0x00)
2 (0x02)
0 (0x00)
0 (0x00)
0 (0x00)
2 (0x02)
0 (0x00)
0 (0x00)
0 (0x00)
3 (0x03)
0 (0x00)
0 (0x00)
0 (0x00) ...
m_BufLen = 32 (0x00000020)
m_InputLen = 32 (0x0000000000000020)

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

version = 1 (0x00000001)
ret = 0 (0x0000000000000000)

CTexture::TryLoad (texturemanager.cpp:548)
self =
px = 0x053E5000 (see above)
pn =
pi_ = 0x05606F38 (see above)


this = 0x053E5000 (see above)

CTexture::GetHandle (texturemanager.cpp:537)
this = 0x053E5000 (see above)

CShaderProgram::BindTexture (shaderprogram.cpp:710)
this = 0x053A2A28 ->
m_IsValid = true
m_StreamFlags = 9 (0x00000009)
m_ValidStreams = 0 (0x00000000)

id = 0x01C85290 -> "tex"
tex =
px = 0x053E5000 (see above)
pn =
pi_ = 0x05606F38 (see above)



GUIRenderer::Draw (guirenderer.cpp:334)
data = (unsupported vector<float >)
TexCoords =
left = (uninitialized)
top = (uninitialized)
right = (uninitialized)
bottom = (uninitialized)

Verts =
left = (uninitialized)
top = (uninitialized)
right = (uninitialized)
bottom = (uninitialized)

shader =
px = 0x053A2A28 (see above)
pn =
pi_ = 0x05256F80 ->
use_count_ = 3 (0x00000003)
weak_count_ = 1 (0x00000001)



cit = (unsupported _Vector_const_iterator<_Vector_val<GUIRenderer::SDrawCall > >)
Calls = 0x055598D8 ->
(unsupported vector<GUIRenderer::SDrawCall >)

Z = 30.000000 (0x41F00000)
matrix =
_11 = 0.001953 (0x3B000000)
_21 = 0.000000 (0x00000000)
_31 = 0.000000 (0x00000000)
_41 = 0.000000 (0x00000000)
_12 = 0.000000 (0x00000000)
_22 = -0.002604 (0xBB2AAAAB)
_32 = 0.000000 (0x00000000)
_42 = 0.000000 (0x00000000)
_13 = 0.000000 (0x00000000)
_23 = 0.000000 (0x00000000)
_33 = -0.001998 (0xBB02F0E9)
_43 = 0.000000 (0x00000000)
_14 = -1.000000 (0xBF800000)
_24 = 1.000000 (0x3F800000)
_34 = 1.000000 (0x3F7FFFFF)
_44 = 1.000000 (0x3F800000)
_data = [16]
0.001953 (0x3B000000)
0.000000 (0x00000000)
0.000000 (0x00000000)
0.000000 (0x00000000)
0.000000 (0x00000000)
-0.002604 (0xBB2AAAAB)
0.000000 (0x00000000)
0.000000 (0x00000000)
0.000000 (0x00000000)
0.000000 (0x00000000)
-0.001998 (0xBB02F0E9)
0.000000 (0x00000000) ...
_data2d = [4]
[4] { 0.001953 (0x3B000000), 0.000000 (0x00000000), 0.000000 (0x00000000), 0.000000 (0x00000000) }
[4] { 0.000000 (0x00000000), -0.002604 (0xBB2AAAAB), 0.000000 (0x00000000), 0.000000 (0x00000000) }
[4] { 0.000000 (0x00000000), 0.000000 (0x00000000), -0.001998 (0xBB02F0E9), 0.000000 (0x00000000) }
[4] { -1.000000 (0xBF800000), 1.000000 (0x3F800000), 1.000000 (0x3F7FFFFF), 1.000000 (0x3F800000) }


CGUISpriteInstance::Draw (cguisprite.cpp:29)
this = 0x055598B8 ->
m_SpriteName = { (unsupported basic_string<char,char_traits<char> >) }
m_DrawCallCache =
(unsupported vector<GUIRenderer::SDrawCall >)

m_CachedSize =
left = 600.000000 (0x44160000)
top = 59.000000 (0x426C0000)
right = 998.000000 (0x44798000)
bottom = 357.000000 (0x43B28000)

m_CachedCellID = 0 (0x00000000)

Size =
left = 600.000000 (0x44160000)
top = 59.000000 (0x426C0000)
right = 998.000000 (0x44798000)
bottom = 357.000000 (0x43B28000)

CellID = 0 (0x00000000)
Sprites = 0x052BDB34 -> (unsupported map<CStr8,CGUISprite >)
Z = 30.000000 (0x41F00000)

CGUI::DrawSprite (cgui.cpp:480)
this = 0x052BDA88 ->
m_ScriptObject = 0x05C55078 -> (JSObject)
m_MousePos =
x = 0.000000 (0x00000000)
y = 0.000000 (0x00000000)

m_MouseButtons = 0 (0x00000000)
m_Tooltip =
m_State = 1 (0x00000001)
m_PreviousObject = 0x053AA870 ->
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 = 0x053AA5B8 ->
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 = 0x052BDA88 (see above)
m_ScriptHandlers = (unsupported map<CStr8,JSObject * * >)
m_JSObject = 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 = 0x052BDA88 (see above)
m_ScriptHandlers = (unsupported map<CStr8,JSObject * * >)
m_JSObject = 0x05C55190 -> (JSObject)

m_PreviousTooltipName = { (unsupported basic_string<char,char_traits<char> >) }
m_PreviousMousePos =
x = 0.000000 (0x00000000)
y = 0.000000 (0x00000000)

m_Time = -6.27744e+066 (0xCDCDCDCDCDCDCDCD)
m_IsIconTooltip = (bool)0xCD

m_PreDefinedColors = (unsupported map<CStr8,CColor >)
m_BaseObject = 0x053AA5B8 (see above)
m_FocusedObject = 0x0551D5F8 ->
m_CachedActualSize =
left = 111.615997 (0x42DF3B64)
(too much output; skipping to next top-level symbol)

m_Name = { (unsupported basic_string<char,char_traits<char> >) }
m_Children = (unsupported vector<IGUIObject * >)
m_pParent = 0x0555A398 ->
m_CachedActualSize =
left = 111.615997 (0x42DF3B64)
top = 427.000000 (0x43D58000)
right = 286.720001 (0x438F5C29)
bottom = 455.000000 (0x43E38000)

m_Name = { (unsupported basic_string<char,char_traits<char> >) }
m_Children = (unsupported vector<IGUIObject * >)
m_pParent = 0x053AA870 (see above)
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 = 0x052BDA88 (see above)
m_ScriptHandlers = (unsupported map<CStr8,JSObject * * >)
m_JSObject = 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 = 0x052BDA88 (see above)
m_ScriptHandlers = (unsupported map<CStr8,JSObject * * >)
m_JSObject = 0x05C6C258 -> (JSObject)

m_pAllObjects = (unsupported map<CStr8,IGUIObject * >)
m_InternalNameNumber = 31 (0x0000001F)
m_ObjectTypes = (unsupported map<CStr8,IGUIObject * (__cdecl*)(void) >)
m_HotkeyObjects = (unsupported map<CStr8,vector<IGUIObject * > >)
m_Sprites = (unsupported map<CStr8,CGUISprite >)
m_Styles = (unsupported map<CStr8,SGUIStyle >)
m_ScrollBarStyles = (unsupported map<CStr8,SGUIScrollBarStyle >)
m_Icons = (unsupported map<CStr8,SGUIIcon >)

Sprite = 0x055598B8 (see above)
CellID = 0 (0x00000000)
Z = 0x0037ED88 -> 30.000000 (0x41F00000)
Rect = 0x0555A570 ->
left = 600.000000 (0x44160000)
top = 59.000000 (0x426C0000)
right = 998.000000 (0x44798000)
bottom = 357.000000 (0x43B28000)

__formal = 0x0037ED1C ->
left = 0.000000 (0x00000000)
top = 0.000000 (0x00000000)
right = 0.000000 (0x00000000)
bottom = 0.000000 (0x00000000)


CImage::Draw (cimage.cpp:57)
this = 0x0555A568 ->

m_CachedActualSize =
left = 600.000000 (0x44160000)
top = 59.000000 (0x426C0000)
right = 998.000000 (0x44798000)
bottom = 357.000000 (0x43B28000)

m_Name = { (unsupported basic_string<char,char_traits<char> >) }
m_Children = (unsupported vector<IGUIObject * >)
m_pParent = 0x0555A480 ->
m_CachedActualSize =
left = 599.000000 (0x4415C000)
top = 58.000000 (0x42680000)
right = 999.000000 (0x4479C000)
bottom = 358.000000 (0x43B30000)

m_Name = { (unsupported basic_string<char,char_traits<char> >) }
m_Children = (unsupported vector<IGUIObject * >)
m_pParent = 0x053AA870 (see above)
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 = 0x052BDA88 (see above)
m_ScriptHandlers = (unsupported map<CStr8,JSObject * * >)
m_JSObject = 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 = 0x052BDA88 (see above)
m_ScriptHandlers = (unsupported map<CStr8,JSObject * * >)
m_JSObject = 0x05C91398 -> (JSObject)



GUI<int>::RecurseObject (guiutil.h:320)
RR = 1 (0x00000001)
pObject = 0x0555A568 (see above)
pFunc = 0x01766A10 -> (IGUIObject::`vcall'{24}')
it = (unsupported _Vector_iterator<_Vector_val<IGUIObject * > >)

GUI<int>::RecurseObject (guiutil.h:326)
RR = 1 (0x00000001)
pObject = 0x0555A480 (see above)
pFunc = 0x01766A10 (see above)
it = (unsupported _Vector_iterator<_Vector_val<IGUIObject * > >)

GUI<int>::RecurseObject (guiutil.h:326)
RR = 1 (0x00000001)
pObject = 0x053AA870 (see above)
pFunc = 0x01766A10 (see above)
it = (unsupported _Vector_iterator<_Vector_val<IGUIObject * > >)

GUI<int>::RecurseObject (guiutil.h:326)
RR = 1 (0x00000001)
pObject = 0x053AA5B8 (see above)
pFunc = 0x01766A10 (see above)
it = (unsupported _Vector_iterator<_Vector_val<IGUIObject * > >)

CGUI::Draw (cgui.cpp:459)
this = 0x052BDA88 (see above)

CGUIManager::Draw (guimanager.cpp:280)
it = (_Vector_iterator<_Vector_val<CGUIManager::SGUIPage > >)
this = 0x052A7100 ->
m_PageStack = (vector<CGUIManager::SGUIPage >)
m_CurrentGUI =
px = 0x00000000
pn =
pi_ = 0x00000000


m_ScriptInterface = 0x005B7DC0 ->
m = (auto_ptr<ScriptInterface_impl>)


profile2__ =
m_Name = 0x01C5EAAC -> "gui"

profile2gpu__ =
m_Name = 0x01C5EAB0 -> "gui"


Render (gamesetup.cpp:237)
skycol =
r = 0.000000 (0x00000000)
g = 0.000000 (0x00000000)
b = 0.000000 (0x00000000)
a = 1.000000 (0x3F800000)

profile2__ =
m_Name = 0x01BBDC44 -> "render"

skystring = { (unsupported basic_string<char,char_traits<char> >) }

Frame (main.cpp:415)
profile2__ =
m_Name = 0xCCCCCCCC

realTimeSinceLastFrame = 0.021060 (0x3CAC851B)
need_update = true
time = 4.30296 (0x40113639E3E17766)
profile2__ =
m_Name = 0x01B1EC78 -> "frame"

need_render = true
is_building_archive = false

RunGameOrAtlas (main.cpp:529)
argc = 1 (0x00000001)
argv = 0x005B7BB0 -> 0x005BA8D0 -> "C:\Users\Ben\devel\ps\binaries\system\pyrogenesis_dbg.exe"
ran_atlas = false
args =
m_Args = (unsupported vector<pair<CStr8,CStr8> >)
m_Arg0 =
path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
separator = 92 ('\')


res = 2.94811e-010 (0x3DF44260277FE9B9)

main (main.cpp:572)
argc = 1 (0x00000001)
argv = 0x005B7BB0 (see above)

wmain (wseh.cpp:380)
i = 1 (0x00000001)
argc = 1 (0x00000001)
argv = 0x005B8D48 -> 0x005B8D50 -> "C:\Users\Ben\devel\ps\binaries\system\pyrogenesis_dbg.exe"
utf8_argv = (unsupported vector<char * >)
ret = (uninitialized)

wmainCRTStartup (crtexe.c:371)

CallStartupWithinTryBlock (wseh.cpp:396)
ret = (uninitialized)

wseh_EntryPoint (wseh.cpp:424)

RtlInitializeExceptionChain (:0)

RtlInitializeExceptionChain (:0)


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

This needs to be fixed before release. What solution are we going with to resize the preview images to 512x512?

Link to comment
Share on other sites

The slider for the map description list box should start at the top of the description by default, if it doesn't already. Due to the expanded area for map descriptions, no map description in Alpha 10 is long enough to test whether they do default to the top of the list box.

Edited by Zeta1127
Link to comment
Share on other sites

Personally I think the easiest solution is to stretch the existing images from 400x300 up to 512x512, if we can live with the loss of quality. This is easy to automate in almost any decent image editor. Otherwise we can make all new images, or we can add padding to existing images up to 512x512 and use the GUI engine to crop them back to 400x300 (I've never actually tested that this works but others seem to think it would), or we could live with seeing the padding but it won't look good on all preview images.

Link to comment
Share on other sites

Is this too late? Yes it is... but here I go anyway. My inspiration mainly came from studying some UI stuff, specifically the Google Chrome Web Store and Windows 8 "Metro". Sorry it was a better but then I undid some and saved accidentally.

post-12985-0-40260900-1344562858_thumb.p

The way its implemented is that its a square image (power of 2, say 256x256) but it has a clip over it limiting it to 256x128. Either have the name above the image, or below it, or display it when the user hovers over the map. (If the hover is done, then add a 50% alpha black mask over it and the text would be white.)

If only the game's GUI was like CSS.... wait it is! I'll take a look through the GUI code and see if I could tinker with it.

Alternately, the entire sidebar could be removed (on smaller screens).

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...