forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   C++ (http://forum.boolean.name/forumdisplay.php?f=22)
-   -   Хоть какой нибудь граф двиг под С (http://forum.boolean.name/showthread.php?t=14238)

Reizel 15.02.2011 11:08

Хоть какой нибудь граф двиг под С
 
Задался тут вопросом - как рисовать ДОС-овскими средствами на экране всякую дрянь?? Препод требует писать прогу с четким интерфейсом. Графическим. Я ей предлагал взять что-нить под винду и на С++ накалякать, к примеру на том же хорсе :) Но упертая, ей надо именно на ДОСе и чтоб пахало на BorlandC компиле. Может кто нибудь подсказать в каком направлении рыть?

impersonalis 15.02.2011 12:46

Ответ: Хоть какой нибудь граф двиг под С
 
А она типа только условия ставит и ничего не рекомендует? Ты уверен, что под UI вы понимаете одно?

Reizel 15.02.2011 12:53

Ответ: Хоть какой нибудь граф двиг под С
 
Да. Именно так. Говорит, вам под винду еще рано писать :-D надо ей ООМ показать :-D

В общем написал простой цикл, с двумя граф.страницами:
Код:

while(KEY!='a')
                { //MAIN LOOP
                        //setvisualpage(!FLIP);
                        cleardevice();
                        setvisualpage(!FLIP);
                        //delay(5);
                        DrawScene();
                        //delay(5);
                        setactivepage(FLIP);
                        FLIP=!FLIP;
                }

При этом отрисовывается здорово, не моргает и тд, но получается такая херня: Изображение как бы "разрывает" - одна часть рисуется с нормальными координатами, а а другая со смещенными вправо-вниз.

UPD ага, ступил. В EGA одна страница с режимом EGA64LO.

impersonalis 15.02.2011 14:24

Ответ: Хоть какой нибудь граф двиг под С
 
Ещё раз повторюсь - мат в контексте твоего поста выглядит смешно

Morganolla 15.02.2011 21:57

Ответ: Хоть какой нибудь граф двиг под С
 
Как она отстала от жизне!!! А был ведь ТурбоВижн!

ffinder 15.02.2011 22:47

Ответ: Хоть какой нибудь граф двиг под С
 
BGI это форменный пц.
Чтобы рисовать в досе начать надо с INT 10H
Годная книга в этом случае: Шикин. E.B, Боресков A.B. Компьютерная графика. Динамика, реалистические изображения. Диалог-МИФИ, 1995.

Mr_F_ 15.02.2011 23:11

Ответ: Хоть какой нибудь граф двиг под С
 
вот это тупач, хорошо что я не учусь на кодера

Reizel 15.02.2011 23:56

Ответ: Хоть какой нибудь граф двиг под С
 
Она просто решила полюбить нам мозги - на след курсе будем под винду писать, а щас....

Randomize 16.02.2011 01:41

Ответ: Хоть какой нибудь граф двиг под С
 
Цитата:

Сообщение от Павел (Сообщение 179062)
Она просто решила полюбить нам мозги - на след курсе будем под винду писать, а щас....

Пишите винду чтоб под неё писать?

IGR 16.02.2011 01:52

Ответ: Хоть какой нибудь граф двиг под С
 
Цитата:

Сообщение от impersonalis (Сообщение 178999)
Ещё раз повторюсь - мат в контексте твоего поста выглядит смешно

А где мат ??

И по поводу поста в неком смысле..
Вообщем это учебный курс !! И если мы учимся в жопнутом универе там всем влом переделывпть программу !! Вот у нас в национальном универе программа за 1999 год !!
Ну я конечно понимаю что с чего то нужно начинать изучение но не 8 лаб о хз о чем !! Сейчас это просто не актуально !!
Тк вот и у вас.. Шото учете а хз зачем !! для галочки !!

Reizel 16.02.2011 11:21

Ответ: Хоть какой нибудь граф двиг под С
 
И все же...
Писать с использованием асма - не прокатит, ей же С нужен :-D

В общем надыбал я неплохой BGI драйвер - 640х480, 256 цветов.
Положил в BIN.
в программе загрузил его (installuserdriver...)
все вроде бы четко, но после инициализации графики есть ошибка:
Graphics Error (254). Что это?? в нете пока не находится никак
//UPDбыла кривущая либа. Скачал другую, поставил, все ок.
Один чел сказал, что в таком режиме можно напрямую писать в видеопамять, это правда?? Если кто знает, подскажите??

ffinder 16.02.2011 13:01

Ответ: Хоть какой нибудь граф двиг под С
 
Цитата:

Сообщение от Павел (Сообщение 179098)
Один чел сказал, что в таком режиме можно напрямую писать в видеопамять, это правда?? Если кто знает, подскажите??

страшный ты человек. тебе ответишь - ты как будто не замечаешь. я же тебе название книги дал. там всё есть.

Reizel 16.02.2011 14:02

Ответ: Хоть какой нибудь граф двиг под С
 
Ладно. Пока дело идет нормально, использую стд.putpixel для рисования битмапы.
И возник у меня вопрос:
при попытке объявить массив
int BitMap[200][200];
Компилятор говорит, что такие большие нельзя.
Тогда я сделал по-хитрому:

int *BitMap[200];
for(int x=0;x<200;x++) BitMap[x]=new int[200];

Вот так компилятор не ругается, но прога вылетает + вылетает BorlandC IDE, без каких либо предупреждений, как будто просто вырубили диспетчером. Скомпилил ЕХЕ-шник - работает. Что делать??

Reizel 16.02.2011 15:01

Ответ: Хоть какой нибудь граф двиг под С
 
Походу я натупил. Не надо битмап. Зачем битмапа? если есть getimage&&putimage!
Теперь дело в другом...Не сознаю, как теперь в этой картинке цвета поменять (куда лезть)
UPD
А все просто!
void * BitMap=malloc(imagesize(0,0,IMGW,IMGH));
int * image=(int*)BitMap;

Earlind 19.02.2011 05:51

Ответ: Хоть какой нибудь граф двиг под С
 
Я в универе воевал с преподшей за то, чтобы на лабе со своим ноутом проги писать и орал на всю аудиторию, что "не буду я на этом дерьме ничего писать, никто этим не пользуется!". Были времена, первый курс... потом я правда ещё много на что орал. Там досовские компиляторы C++ стояли, а у меня на ноуте MSVC 2008 был. Так нет, заставляли на своих компах, которые ещё и пашут на последнем издыхании... да и то, что я и так выучил ещё в школе. Да и сейчас пургу гонят. Хотя у меня не программерский курс, а сисадминский. А жаль, надо было на програмера идти :/


Часовой пояс GMT +4, время: 16:18.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot