[project1dev] Re: Project1 - SVN Update 321

  • From: Alan Wolfe <alan.wolfe@xxxxxxxxx>
  • To: project1dev@xxxxxxxxxxxxx
  • Date: Thu, 2 Jul 2009 21:59:02 -0700

ok so the UI system is kinda N-Rigged and needs to be cleaned up.

but, the whole game lives in the UI, like even the game itself is just logic
that runs on a UI sheet

anyways, if you destroy parts of the UI while it's doing it's stuff, that
means it would break.  Like, imagine looping through an array and calling a
function for each item in the array, but that function modifies that array
you are looping through.  it could make some wierd and bad stuff happen.

so what it does is instead of deleting things right away, it marks them for
being deleted, and then after the game is done processing all the UI stuff
for that frame, it runs through and removes everything thats marked for
deletion.

there was a problem because as part of deleting UI peices, it frees any
textures that it has loaded (like the art for a button is freed when the
button is freed - which doesnt happen right away since UI stuff is marked
for being deleted later).

the problem came in when you were changing maps, it would free all the old
stuff, then load all the new stuff, THEN it would clean up the UI, which
included freeing images by ID# which was in this case the new loaded art.

So it was freeing art that was needed in the new art and using bad pointers
to try and get the textures to use and crashing when it read bad parts of
memory.

On Thu, Jul 2, 2009 at 9:51 PM, Kent Petersen <kentkmp@xxxxxxxxx> wrote:

> yeah it works. what was the problem?
>
>
> On Thu, Jul 2, 2009 at 9:50 PM, Kent Petersen <kentkmp@xxxxxxxxx> wrote:
>
>> er wait forgot to update
>>
>>
>>
>> On Thu, Jul 2, 2009 at 9:50 PM, Kent Petersen <kentkmp@xxxxxxxxx> wrote:
>>
>>> still crashes
>>>
>>>
>>> On Thu, Jul 2, 2009 at 9:13 PM, Alan Wolfe <alan.wolfe@xxxxxxxxx> wrote:
>>>
>>>> if you could, try it out when you get a minute and see if it happens for
>>>> you guys anymore (it shouldnt but just want to make sure)
>>>>
>>>>
>>>> On Thu, Jul 2, 2009 at 9:12 PM, Apache User <
>>>> dhapache@xxxxxxxxxxxxxxxxxxx> wrote:
>>>>
>>>>> User:atrix256
>>>>>
>>>>> Message: Fixed the crash from switching from kenttest to fortuneteller
>>>>> tent that Kent and Nick found.
>>>>>
>>>>> <Files Changed>
>>>>> U   ARRelease.exe
>>>>> U   AR_Map.cpp
>>>>> U   READMETODO.txt
>>>>> U   TextureManager.cpp
>>>>> U   TextureManager.h
>>>>>
>>>>>
>>>>>
>>>>
>>>
>>
>

Other related posts: