본문 바로가기

Programming

iOS 7.0 상단/하단 드래그시 컨트롤센터 메뉴 프로그램 코드로 제어하기 최근에 OpenGLES2.0 을 사용해서 게임을 개발하고 있는데, 게임화면 윗부분이나 아랫부분을 드래그 할때마다 컨트롤 센터로 연결되는 메뉴가 나오면서 opengl 프레임 드랍 현상이 발생하여 골머리를 썩었다. 안드로이드를 자주 다뤄본 필자로써는 당연히 이 기능을 어플 상에서 제어할 수 있으리라 생각했지만.. 구글링 해본 결과, 프로그램 코드로 이것을 제어하는건 불가능하다. 하여간 애플의 이런 고집은 도무지 이해할 수가 없다. 어떻게든 편법이라도 찾아보려 했으나 없는 듯 하니, 게임의 터치가 이 부분과 충돌되는 경우엔 유저에게 옵션에서 이 기능을 끄도록 고지하는 수 밖에 없다. 그래도 최소한의 처리는 해놔야 할 것 같아서, Status Bar 라도 끄기로 했다. * 최상위 ViewController에 함.. 더보기
베지어 곡선 (Bezier curves) 베지어 곡선 Bézier curves Written by Paul Bourke Original: April 1989, Updated: December 1996 이 문서는 베지어 곡선이라는 특수한 곡선에 대한 수학적인 설명을 담고 있습니다. 이 곡선의 이름은, 1970년대 Renault car를 디자인하는 과정에서 이 곡선을 사용했던 Pierre Bézier라는 프랑스 엔지니어의 이름을 따서 만들어졌습니다. 그때부터 이 곡선은 식자 산업(typesetting industry)에서 절대적인 우위를 점하게 되었고, 특히 Adobe Postscript, 폰트 제품 등에서 널리 사용되었습니다. 3차원 공간에 있는 N+1개의 조절점(control point) pk (k=0,1,...,N)를 생각해봅시다. 베지어 p.. 더보기
2D 회전행렬 좌표 http://minilog.tistory.com/145 간만에 이미지 회전을 사용하게 되었습니다..2D 입니다. 문제는 공식이 기억이 안나는군요..증명까지는 바라지도 않습니다. 중심 좌표 : 회전전 좌표 : 회전후 좌표 : 각도 : 더보기
PHP+MySQL을 이용한 웹게임 개발 http://115.68.7.121/mediawiki/index.php/Engineering_php%2Bmysql_web_games 이 문서는 PHP + MySQL로 웹게임 제작시 고려해야할 기술적인 문제에 대해 정리한 것이다.Contents [hide]1 Concurrency control2 Development design3 Performance4 Web server5 Database6 Deadlock7 Authentication8 Security9 External links[edit]Concurrency control여러 명이 서버에 여러명이 접근하게 되면 웹게임이든 온라인 게임이든 동시성(concurreny)을 고려하고 제작을 해야한다. 동시에 여러명의 사용자가 게임에 접근하게 되면 databas.. 더보기
C# Attempted to read or write protected memory 에러 Managed Code에서 "Attempted to read or write protected memory. This is often an indication that other memory is corrupt." 와 같은 오류가 발생하는 것은 흔하지 않다. 이것은 Native Code에서 잘못된 메모리를 참조하는 경우에 발생하는 데, 아시다시피 Managed환경에서는 포인터를 이용한 직접적인 메모리를 다루는 경우가 거의 없기 때문에 경험할 일이 없을 것이다. 하지만, PInvoke 와 같은 Interop 를 사용하는 경우라면 달라질 수 있다. 이는 결국 Native COM을 Managed 에서 사용하는 것이므로, 여전히 Native COM에서의 문제가 Managed환경으로 전달되었을 때, Access .. 더보기
RGB 색상표 (16진수) 변환 p, td, ul, ol, li { font-size:12px; line-height:140%; margin-top:0; margin-bottom:0; } body { font-size:12px; }색상표의 16진수 String 값을 Color 구조체로 변환하여 사용 string bb = "H808080";int r = Convert.ToInt32(bb.Substring(1, 2), 16);int g = Convert.ToInt32(bb.Substring(3, 2), 16);int b = Convert.ToInt32(bb.Substring(5, 2), 16); Color c = Color.FromArgb(r, g, b); pictureBox1.BackColor = c; for (KnownColor kc .. 더보기
XNAExtras로 XBOX360에 폰트를 출력해 보자!! #1 * 주의 사항 0. 이글에 대한 모든 권리는 저에게 있습니다. ( 소스에 대한 권리는 개발자 분에게 있습니다. ) 1. 이글을 퍼가실때는 아래 댓글로 어디에 퍼가시는지 반드시 알려 주십시요. 2. 개인블로그등 비상업적인 목적이라면 출처만 밝혀주시면 모두 허용하겠습니다. 단 상업적인 목적이나 상업적인 싸이트에서 게시하실 경우 저에게 연락해 주십시요. 3. 오탈자나 잘못된 부분들도 모두 아래 댓글에 달아 주십시요 ^^; 부탁드립니다. 4. 퍼가실때 이 메시지와 퍼온 주소 (http://nomoreid.egloos.com/2910890)를 빠뜨리지 말아주십시요. 5. 아래 소스틑 아직 XBOX360 에서 테스트 해보지 못했습니다. 기술적으로 안될 이유는 없어 보입니다만 혹시나 안될때는 저에게 알려 주십시요. .. 더보기
C# StreamReader 에서의 한글 Encoding 문제 오늘은 개발자 한 분이... ASP.NET 에서 한글이 포함된 HTML 텍스트를 로딩했는 데, 한글이 깨진다는 문제를 들고 왔습니다. 텍스트 파일의 특성상, 가볍게 다음과 같은 코드로 마무리를 지었던 것입니다. string fileContent = null; using ( StreamReader sr = new StreamReader( filePath ) ) { fileContent = sr.ReadToEnd(); sr.Close(); } 저 역시, 위의 코드를 보고 너무 표준적인 코드라 ^^ 문제가 없어 보였지요. .NET 에서는 문자열 처리를 명시적으로 지정하지 않는 한, 기본적으로 "System.Text.UTF8Encoding" 으로 처리를 합니다. 문제는 거기서 발생을 하지요. 해당 HTML 텍스.. 더보기
[XNA] Scrolling background images horizontally across the screen If you're working on 2D games, at some point you're going to want to know how to create a scrolling background. This tutorial will cover setting up a horizontally scrolling background that auto-scrolls behind your character. Let's go ahead and get started. Creating the new game project:We are going to be using the "Sprite" class we created in the tutorial "Creating a 2D Sprite". Instead of creat.. 더보기
[XNA] A Simple 2D Camera What is a camera? Intuitively we know what a camera is: simply a way to show the action.A Camera allows us to deal with the display of the action in a detached way from the action.ImplementationI like to start with what we are trying to achieve. For the purposes of this post, I want to have two cameras showing the same action at different zoom levels, like this:In this case we want 2 cameras, wi.. 더보기