Скинь проект мне, лучше, если ты его максимально сократишь, только чтобы ошибка осталась.
Сократить не удастся, это же почти готовая игра.
Перезагрузка уровня возникает в функции Mod_Game_Logic.Mouse_Click
Данные грузятся так Loader->(Load_Game_Elements<-Load_Sprite)->Render+Game_Logic
Проект скинул на почту, ни кому не показывай... А то стыдно
Снова скинул на почту :)
Погонял на двух разных компах, WinXP на обоих, на одном только EXE, на втором и EXE, и из среды. Утечек НЕТ. То есть выделение памяти раз от раза меняется на +- десяток килобайт, но в целом роста потребления памяти нет. Возможно Win7 кэширует что-то связанное с приложением сама под свои нужды?
Возможно, пойду на Windows XP погоняю
СырМан
У мя тоже XP, если хочеш могу потестить...
Чудеса... На XP всё нормально!
Но вот кое что другое обнаружил, почему-то игра на XP потребляет 10,8 мб, а на win7 8,4 мб
Хотя, не принципиально.
max255
> У мя тоже XP, если хочешь могу потестить...
Хочу :), но не сейчас. На праздниках надёюсь доделать новую демку, создам тему, статейку напишу.
Такая ситуация.
Внутри класса имеются ссылки на другой класс
Я удаляю ссылку на этот класс
Удалятся ли ссылки которые были внутри класса?
Надеюсь понятно сформулировал
Да, удаляются, только надо понимать, что уничтожение ссылки и уничтожение самого объекта - это разные вещи.
VB6 автоматом релизит все вложенные объекты при уничтожении последней ссылки на него. Хотя в Class_Terminate можно прописать уничтожение всех созданных внутри класса экземпляров других классов, это считается правилом хорошего тона.
Но это касается только классов самого VB6, если класс создан при помощи API (например Bitmap), то его экземпляры уничтожать нужно.
Спасибо
Public Property Get/Let для чего применяется?
Property - это свойства. Это вроде переменных, при чтении-записи которых происходят автоматически какие-то действия. Например у тебя объект - карта, имеет высоту и ширину, а так же массив с какими-то данными, соответствующего размера. Если сделать ширину обычной публичной переменной:
Public Width As Long
То потом при присвоении:
Map.Width = 20
Размер массива останется прежним, придётся отдельно делать ReDim. А так ты делаешь
Private meWidth As Long Private meHeight As Long Property Let Width (w As Long) meWidth = w ReDim Ar(meWidth-1, meHeight-1) End Property Property Get Width () As Long Width = meWidth End Property
Классная штука
А может попробовать написать движок на OpenGL + vb6, и не будет проблем работоспособности игры на Windows vista и 7?
Тема в архиве.