Lacutis

Members
  • Content count

    155
  • Joined

  • Last visited

Community Reputation

301 Neutral

About Lacutis

  • Rank
    Member
  1. Unity Win Free Copies of Unity books

    The most interesting thing for me about the books would also be learning Unity. I'm familiar with Torque and I use it and have only dabbled a little with Unity. A step by step guide, especially one that talks about how to do things in C# would be really helpful to getting up and running quickly. Also learning iOS development would be nice. I'm especially interested in the section that talks about communication with a back end server.
  2. C++ counter

    Quote:Original post by M2tM None of this matters in this particular instance, and bringing up long-dead semi-standard formats for mainframe IBM systems in a beginner thread is laughable. I'd be careful with sweeping judgments like "long dead". I happen to be signed into an AS/400 right now that is only 2.5 years old but had it's OS upgraded less than a year ago. I deal with ASCII <-> EBCDIC all the time. They are extremely common as to be pretty much the standard in hospitality and banking industries even now. Yes, you would be unlikely to write a game for one.
  3. C# Properties, get, set.

    Another reason to do it would be for growth reasons. If you know it some point you might be putting logic behind the getter/setter for validation or triggering then it's best up front to create the trivial property and use it in your code. That way in the future when you expand the code you don't need to rewrite to support the additional functionality.
  4. C# Properties, get, set.

    In addition when you use the autogenerated properties you can't access the auto created back variables that it creates to store the values. You have to use the property to access the value even in class methods. So that is the reason you would declare the auto generated setter as protected so that your class (as well as derived classes) can still set the property but anything outside the class can only call the getter. Just felt that warranted a little more explanation.
  5. Framework update

    I worked on the framework yesterday. I added more to the event and windowing frameworks to pass button presses to windows. If the cursor is visible it passes the button presses to any window and any children components that fall under it. I gave the button an on click event handler and made it create a new window with a label in it above the original window. It all seems to be working pretty well. Next I think I need to create some more components to allow me to build the game window from. Edit: Part of the problem that I'm hitting is that Lua doesn't really have a concept of classes and so has no concept of "constructors". A lot of the things that I am doing would be a ton easier if I could write constructors. I am also having to fake out "virtual" functions to make some of the event handling for windows work properly.
  6. It's been way too long.

    I really don't write in this enough. Work keeps me busy and by the time I get home I don't feel like doing much development after doing it all day. My PSP sparked my interest again recently, so I was looking around on the internet for information on homebrew stuff I came across this: PGELua PSP Game engine So I downloaded it to play around and decided I would try writing a simple Turn-Based Strategy game. I decided the first thing I needed to do was to write some kind of GUI framework so that I could handle things easier. I started out writing a window handler to handle the drawing of the windows, then I added a Window class that could draw itself. I then inherited that into a button class and added some extra functionality to that. After I was done I ended up with this: Using the framework I was able to do that with this: assert(loadfile("Window.lua"))() if not WindowManager then error("Failed to load window classes.") end local winman = WindowManager:new() local mainwin = Window:new { name = "Test", xpos = 200, ypos = 100, height = 75, visible = true, } local myButton = Button:new { name = "TestButton", xpos = 25, ypos = 20, width = 40, height = 20, text = "Push Me", visible = true } if not mainwin:addChild(myButton) then error("Adding Button Failed.") end if winman:addWindow(mainwin) then wintext = true else error("Failed to add window to manager.") end while pge.running() do pge.controls.update() pge.gfx.startdrawing() pge.gfx.clearscreen() winman:Draw() -- Where most of the magic happens verdana9:activate() if wintext then verdana9:print(200, 200, white, "There Should be a window.") end pge.gfx.enddrawing() pge.gfx.swapbuffers() end That was a couple days ago. When I got home from work tonight I decided to add in an a cursor that I could move with the analog stick. In order to do that I decided I needed an event handler to accept event messages and dispatch them to listeners. I added a control class to scan the buttons and create events when their status changes. So that left me with this when I was done: I cleaned up some of the code, put the entire library in a table to get it all out of the global namespace and ended up with this: assert(loadfile("guilib.lua"))() if not gui.WindowManager then error("Failed to load window classes.") end local ehandler = gui.EventHandler:new() local controls = gui.ControlHandler:new { handler = ehandler } local cursor = gui.Cursor:new { handler = ehandler, visible = true } ehandler:Register(cursor, cursor.Handler, "Stick") local winman = gui.WindowManager:new { handler = ehandler } local mainwin = gui.Window:new { name = "Test", xpos = 200, ypos = 100, height = 75, visible = true, } local myButton = gui.Button:new { name = "TestButton", xpos = 25, ypos = 20, width = 40, height = 20, text = "Push Me", visible = true } if winman:addWindow(mainwin) then wintext = true else error("Failed to add window to manager.") end local basedir = pge.dir.getcwd() while pge.running() do controls:Update() pge.gfx.startdrawing() pge.gfx.clearscreen() winman:Draw() cursor:Draw() verdana9:activate() if wintext then verdana9:print(200, 200, white, "There Should be a window.") end pge.gfx.enddrawing() pge.gfx.swapbuffers() end Then I decided to take the screenshots you see above so I added this real quick: ss = { num = 1 } function ss:TakeOne(event) if event.value["cross"] then pge.gfx.screenshot("screenshot"..self.num..".png") self.num = self.num + 1 end end ehandler:Register(ss, ss.TakeOne, "Press") And I had a screenshot button. Of course I'm glossing over all the debugging and so forth it took to get the library classes working correctly. The second part though I started at about 7 pm tonight and its just after 1 am now, so not bad for 4 hours I think. Next I'm just going to work on adding different controls that you would expect to have. Check boxes, etc. Now it's time for bed.
  7. I'm horrible at this

    By this I mean blogging. As you can see by my archive on the right I've been a GDNet+ Member for quite a while, but I don't keep my journal up to date very well. I really haven't done a ton on the game development front in the last year, I decided early in the year that the TorqueX stuff was still too new to be productive and I was busy like always with work. World of Warcraft always sucks up too much time, etc. I noticed a week or so ago that the DreamBuildPlay contest was starting up again. The warmup started December 20th so I was already behind. On the plus side I already had a concept that I was kicking around that kind of meshed right with what they were asking for. I redownloaded all of the XNA stuff, and decided to give TorqueX another try since I have licenses for everything GG makes except for TGEA. TX has come a long way, it's really nice to work with. Over the last 4 nights I've already got my tileset for my ground, an animated character that moves, and a camera that follows him. I think my game idea will be novel to play if I get the ai working the way I want in the game. We will see how far I get this weekend. My big stumbling block is going to be artwork, like it always is. I've found some free textures and sprites that I'm using but it would be nice to have something more custom.
  8. Progress...

    It doesn't look like much, but it's actually representative of a lot of work. I have a mostly working skybox, an object handler class, a model class with working shaders, a base camera object that I still need to work on so that I can manipulate it easier. I still have a lot to work on, but it feels good to make progress and to work on something. I think I'm going to hit the sack and work on it some more in the morning.
  9. Progress...

    It doesn't look like much, but it's actually representative of a lot of work. I have a mostly working skybox, an object handler class, a model class with working shaders, a base camera object that I still need to work on so that I can manipulate it easier. I still have a lot to work on, but it feels good to make progress and to work on something. I think I'm going to hit the sack and work on it some more in the morning.
  10. Where to begin?

    Do you want to use an existing engine or write your own? What languages do you know? Do you want to learn a new one? It sounds like you want to use an existing engine that uses Java as a scripting language, which I don't know of any.
  11. XNA and other Stuff

    From around the 20th of this month till around the 3rd is the busiest time for me at work. It's end of year, I have to do upgrades on the HR and Payroll systems for the new years tax tables, there is the year end saves and all kinds of other fun stuff. This year is compacted with the merger which just adds bonus work like data pulls for the new corp, etc. I'm still finding some time to work on game dev related stuff though.. Back at the end of July I bought a new laptop so I could work on stuff when I was away from the house, it's pretty nice, has a GeForce 7300 Go in it, 2.4 ghz dual core. So I've been playing with the XNA dev kit since a day or so after it was released and I have to say it's really nice. Microsoft did an excellent job with it. I ended up going and picking up a wired XBox controller because all mine are wireless and I wanted to be able to test with the actual controller. I haven't really messed around that much with C#, but I have been programming in C++ for over 15 years so it's not that far of a stretch. I started in working on an engine for a game idea I have. I think its going to work pretty well but I want to get the engine fleshed out some before I really lay out the game. Right now between what I've gleamed from several tutorials plus ideas from other engines I've put together I've gotten some groundwork laid. A basic object framework that is working, a scenegraph, and I started on basic cameras before it got too late last night. I'll start on that again tonight after work.
  12. Good Morning Journal Land!

    Welcome to GDNet+
  13. Where the hell have I been?

    Well, looking at my last entry, it was in July of last year. You see back in 2003 I moved back to Arizona from Texas and quit my job to be close to my Grandfather. He had Alzheimers and I didn't want my one major regret in life to be that I didn't spend the time that I could have with him before it was too late for either of us. So I moved back. He had a steady decline, but I don't regret a second of the time I spent back here. In August he went downhill fast and he finally passed on the 15th, which is the day after my birthday. I pretty much quit working on everything after that except for my job out of necessity. Then things at work changed in January/February and my workload increased which ended up with my company going through a merger (which finishes in the next couple weeks) and me taking a promotion this last September. The last month or so I've started tinkering around with things again, more specifically the XNA toolkit which I will probably talk more about later. Anyway, there is all the information you never wanted to know. Hopefully I will get some more use out of this journal which I have been paying for for the last 2+ years and get some more motivation out of it.
  14. Quote:Original post by Uphoreum PS. I notice that you're loading the background texture every time you want to draw it, in the DrawBackground function. That's causing the program to load the graphics from the disk every frame, causing a slowdown. You'll want to store that texture in a Texture2D object, like this: Texture2D myTexture = content.load<Texture2D>("graphics//background.png"); That's not entirely true. He is loading it using the content manager, which should only load it if it isn't loaded. He *should* put it in a texture object if he knows the texture name and plans on repeatedly using it, but there is nothing wrong with grabbing a reference to the texture from the content manager.
  15. SQL Databases

    The method used greatly depends on: 1) The SQL Server (MS SQL, MySQL, Postgres, etc) 2) The platform(s) being developed for. 3) The Language being used. 4) The compiler. (GCC, Visual Studio, etc). You covered 2 and 3 in your initial post.