C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[27012] Re:라인 그리기 함수 어셈블리어로 된것 있나요?
이지현 [cappuccino] 1511 읽음    2003-08-31 00:59
점, 선, 면과 같은 짜실 짜실한 드로잉 함수가 GDI를 통해 화면에 그때 그때 그려지면
느릴 수 밖에 없습니다. 이런 경우, 그려질 영역 만큼을 버퍼로 잡고, 버퍼에다 짜실한 작업들을
수행 한 후, 버퍼에서 화면으로 한번에 그리는 방법이 유효합니다.

물론 최고의 속도를 위해서는, 선그리기 루틴 자체를 함수에서 분리해 소스내에 삽입하는
방법도 있고, 어셈블리로 구현하는 방법도 있지요. 하지만, 굳이 어셈블리로 구현하지 않아도
백 버퍼만 잘 활용하면(더블버퍼링) 초당 몇만에서 몇백만개의 선그리기는 수행할 수 있습니다.
(요즘 컴퓨터들이 워낙 사양이 높다 보니 ㅡ,.ㅡ)

앞 서 다른 분이 덧말을 달아 주셨듯, 브레젠험의 선그리기 알고리즘의 개선판(더블 스텝) 쯤 되는
알고리즘을 C로 구현해서 백버퍼에다 그리시고 한꺼번에 옮기는 더블버퍼링을 쓰시든지
화면 모드를 DirectX 점유모드로 셋팅해 비디오 메모리의 주소를 받아 그리면, 만족하실만한
속도가 나오겠지요.

이도 저도 힘드시면 Graphics32 컴포넌트를 사용하실것을 권합니다.

+ -

관련 글 리스트
26988 라인 그리기 함수 어셈블리어로 된것 있나요? 아담 756 2003/08/29
33284     Re:라인 그리기 함수 어셈블리어로 된것 있나요? posix.duo 825 2003/08/29
27012     Re:라인 그리기 함수 어셈블리어로 된것 있나요? 이지현 1511 2003/08/31
33283         Re:Re:라인 그리기 함수 어셈블리어로 된것 있나요? 이지현 864 2003/09/04
33282         Re:Re:라인 그리기 함수 어셈블리어로 된것 있나요? 아담 840 2003/09/01
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.