• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.

DracosX

Members
  • Content count

    116
  • Joined

  • Last visited

Community Reputation

128 Neutral

About DracosX

  • Rank
    Member
  1. You can use the NT loader to fire up gentoo. All you need to do is do a dd to get the master boot record from the gentoo drive and place it into a file on your boot partition and add an entry under your boot.ini. If your boot.ini lies on an ntfs partition, you can use captive-ntfs to mount it read-write. Even still, you can format a floppy and copy the boot sector to it to get your boot sector to your windows partition. Google for captive-ntfs. The Linux Documentation Project has an article on booting linux from nt loader somewhere. I believe, IIRC it goes something like this. From Linux # dd if=/dev/hdb of=/mnt/floppy/linuxboot.img bs=512 count=1 From Windows C:\> copy a:\linuxboot.img c: Then edit your boot.ini accordingly [boot loader] timeout=30 default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS [operating systems] multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP" ... C:\linuxboot.img="Linux"
  2. Man, I'm late for this one too... My apologies for resurrecting dead threads, but there is hope for NTFS write support. Google for captive-ntfs. It requires a native install of windows or at least for you to own a license to download the service pack. It uses the native ntfs.sys from windows to read from and write to the filesystem. I've been using it myself for some time, and it works without a hitch for me. At my job, I have the only Linux based machine, and I've found that data-recovery is a lot faster and cleaner from linux using custom-built shell scripts (YMMV). The nature of my work involves a lot of windows interaction, and I'd be lost without NTFS write support. The only drawback I've found is that it's only supported for the 2.4 series of kernels (the earliest I've tested personally), so if you use 2.5/2.6 you'll need to recompile 2.4.
  3. Native American (Apache)
  4. Yeah, that's probably the best way to go about it. I remember when I had my first experiences with Linux... Mandrake 7.1. Downloaded over a 56K only to find out my sound card wasn't supported by the kernel, and my winmodem was crap... Back then, I didn't even know what a "linux" was, heh... And now... Well, lets just say the reason I'm late on this reply is because I've been writing a kernel module to get my winmodem working in linux. Best of luck to you, and always remember google and tldp.org. Also, you might want to take a look at XPde. I've never messed around with it, but it looks to be pretty good for ex-windows (not XWindows) users trying to find a good (free) stepping-stone.
  5. Step 1: Open the gimp. Step 2: Go to File->Aquire->Screenshot. Step 3: Set a slight delay so you can get things in order... Step 4: wait until the delay is done. Step 5: Save and post your screenshot.
  6. Man, I'm late... Sorry for digging up the dead post, but I've been meaning to get around to this since the thread was "live"... Slackware 10 XFce4 gdesklets Background from kde-look.org...
  7. Quote:Original post by spejic But for my game, I really need to use some of the things WinForms gives me. For example, while the 2004 DirectX samples include buttons and listboxes and such, I need regular menus and pop-up menus for my program and I really don't feel like writing them from scratch. So is the OnPaint game loop the best choice in this situation? While the term "best" is subjective, I really don't see any reason why using a PeekMessage based loop would prevent you from using WinForms at all. I've used it in most of my recent projects with no problems. If you use an implementation similar to the one I posted before, the messages from the form windows still get dispatched to their respective WndProcs, keeping all of that low-level code out where you don't even have to look at it. That's not to say that you can't handle the messages yourself, but you really don't have to. Of course, I could be wrong, and everything I've posted so far could be complete crap. Research this for yourself. If you find information contrary to what I have found, I'd be interested to hear it. Also, of course, if you prefer OnPaint or DoEvents, of find that they're more suited to your needs, by all means, use the tools that are available to you. Edit: You could, of course, P/Invoke GetMessage as well if you're doing a normal Win32 GUI app and still want the benefits of WinForms without using 100% of the CPU... Also, I just realized that I joined Gamedev the same day I proposed to my Ex-wife... Guess my love of game programming lasted longer than her love of my game programming... ;)
  8. You'll probably get (at least) slightly better performance with a multithreaded render loop (especially on SMP machines), however, ymmv depending on the actual implementation you're using. I haven't (yet) had the time to write up and profile the render loop I posted earlier versus one that is run in a seperate thread, but that is on my list of things to do with my engine this week. Currently, I'm pushing about 380 FPS with my engine on my AthlonXP 2200+, GeforceFX 5200 dev machine using one similar to the one I posted earlier dipping to about 320 FPS during the most graphics intensive sections. That's great at this stage of development, and it shouldn't be too much work to implement a pluggable render loop to test different techniques. I'll post some code as well as some benchmarks just as soon as I get the time.
  9. Quote: Yes, that's what you should be doing, Although, I would have it call another method from the else portion instead of directly inserting game code there. Makes it easier to reuse. Yeah, that's actually what I do, that was just a quick throw-together for the sake of the OP. Although, I probably should have made that clearer in my post. You make some great points though, especially with the thought of a pump object... And you're also right, that should be an out instead of a ref (doesn't affect what the code does, afaik, it just makes more sense really) but once again, I just kinda threw that together for the sake of the discussion.
  10. I don't claim to know everything about this, heck, I don't claim to know anything about anything but this is something like I'm using. class Win32_API { public enum PeekMessage_Paramaters { No_Remove = 0, Remove = 1, No_Yield = 2 } public struct MSG { public IntPtr hwnd; public uint message; public uint wParam; public uint lParam; public uint time; public POINT pt; } public struct POINT { public Int32 x; public Int32 y; } [DllImport("user32", EntryPoint="PeekMessage")] public static extern bool PeekMessage(out MSG lpMsg, IntPtr hWnd, Int32 MsgFilterMin, Int32 MsgFilterMax, PeekMessage_Paramaters RemoveMsg); [DllImport("user32", EntryPoint="TranslateMessage")] public static extern bool TranslateMessage(ref MSG lpMessage); [DllImport("user32", EntryPoint="DispatchMessage")] public static extern Int32 DispatchMessage(ref MSG lpMessage); } class Game { private GameForm Window = new GameForm(); ... public void Run() { Win32_API.MSG msg = new System_API.Win32_API.MSG(); while (Window.Created) { if (Win32_API.PeekMessage(out msg, (System.IntPtr)0, 0, 0, Win32_API.PeekMessage_Paramaters.Remove)) { Win32_API.TranslateMessage(ref msg); Win32_API.DispatchMessage(ref msg); } else { // Game Code } } } EDIT: Changed PeekMessage to take an "out MSG" instead of a ref. Doh! [Edited by - DracosX on August 6, 2004 10:34:22 PM]