Вот такой код
dev = new Device();
dev.SetCooperativeLevel(this, CooperativeLevelFlags.Normal);
SurfaceDescription description = new SurfaceDescription();
description.SurfaceCaps.PrimarySurface = true;
//создаю основную поверхность
front = new Surface(description, dev);
//создаю клиппер
clip = new Clipper(dev);
clip.Window = this;
front.Clipper = clip; //присобачиваю его к основной певерхности
description.Clear();
description.Width = front.SurfaceDescription.Width;
description.Height = front.SurfaceDescription.Height;
description.SurfaceCaps.OffScreenPlain = true;
back = new Surface(description, dev); //Создаю теневую (вторичную) поверхность
Я хочу этим самым получить окно (не большого размера 400x400) в котором с помощю DirectDraw вывожу изображение моего спрайта.
У меня все получилось, но все работает очень медленно и еще коодинаты строки "helptext" и спрайта отсчитываются не от левого угла окна, а от левого угла десктопа. Получается что переместив окно повыше я вижу "helptext" а перетащив пониже в окне пояляется спрайт а текст исчезает.
Размеры поверхности front = 1024x768 (как у десктопа)
Размеры самого спрайта 50x50
Как увеличить скорость? (я пологаю что это из размеров поверхностей front и back)
Как привязать координаты объектов к окну? (использовать ScreenToClient или как то разобраться с повехностями)