• Content count

  • Joined

  • Last visited

Community Reputation

104 Neutral

About ItsDan

  • Rank
  1. Easier way for sprite placement

    Graph paper may help, or a simple graphics program. For pong some simple math works too.
  2. iPhone programming resources

    I finally got used to the syntax of Objective-C after a few weeks of using it. Xcode I still haven't gotten used to. I've found it a bit ironic that where MS is criticized for their OS but has pretty robust development tools, Apple has what's usually regarded as one of the most stable operating systems, but their development tools are annoying to work with. So I guess my advice is once you have access to it just start using it.
  3. iPhone programming resources

    Are you certain they make 'iphone games' and not just browser based games using java that happen to be sized correctly to run on the iphone?
  4. Can I determine if my router is using NAT?

    The issue is there's really no 'reasonable' approach to this, and it's why client-server models are generally favored to peer-to-peer. When a group of computers is sharing an IP address you have to configure your router very specifically to allow it.
  5. Building rooms

    See maybe this is an issue with me not playing the latest one? I'm not sure. I don't recall in The Sims the game actually doing anything when you finished a room. What is it you want to 'do', determining the tiles in a room (or not in a room) isn't in itself a task, it's more like a means of accomplishing something. Example, you want to let the user paint the floor of a room all at once. The user picks the tool, they hover over a tile and click paint. At that point you can run the algorithm I summarized using the hover point of the mouse as the starting tile, and change the texture of all the neighboring tiles until you hit walls. It's not much different than a 'flood fill' in MS Paint. My point is I don't think The Sims maintains a list of 'rooms' persay, perhaps they do as an optimization but it wouldn't be necessary.
  6. Building rooms

    The starting point would depend on what you were doing which is something I've suggested you give us an example of quite a few times now. It could be the tile the mouse is over or any number of other things.
  7. Building rooms

    I'd still like to see an example of a problem you're trying to solve as I still suspect you're going about it backwards. Either way don't use A* as you're not pathfinding, and you said you're picking a tile 'next to' the end point and pathfinding between them? The path between two adjacent tiles is a direct line... You had it partially right through. Take a tile, then add all surrounding tiles not blocked by a wall to an 'open list'. Then loop through the open list and repeat that process, adding any surrounding tiles that haven't been processed to a new open list. Just repeat that until you have an empty open-list after a given iteration. Any tiles it touched during the process are part of a single room.
  8. Guess that programming language!

    A lot of high-level modern languages provide (sometimes quite extensive) libraries for you to use. C#/VB.NET both use the .NET framework, Java has it's own libraries, as do C languages. Regarding BASIC are you sure you know what you're asking? Are you saying you want to work with the 20 year old programming language made famous by systems like the Commodore 64? Modern Visual Basic is a decedent of BASIC in that much of the syntax is the same as, derived from, or "in the style" of BASIC instructions. It relies on the .NET framework the same that that C# is derived from C/C++ style syntax, and also relies on the framework. Neither language exists without the framework. I believe it's the same for Java. This is in contrast to languages which aren't as high-level as those such as C or C++ where using libraries is typically much more optional. For example you could use SDL for your graphics but you'd likely be aware that you're using an additional library at that point.
  9. How to make a train turn correctly

    Perhaps part of your conceptualization difficulties are coming from the fact that a train and a 'segmented bus' would behave differently in regards to steering. The track information (possibly a spline as previously mentioned) would help determine where the center of the car should be.
  10. Quote:Original post by OneThreeThreeSeven Start with any language except something like visual basic. I disagree. Visual Basic is an excellent first language. The underlying libraries are identical to C# but the syntax can be less overwhelming. My own recommendation would be either Visual Basic or C# and you can get free editions of both.
  11. Building rooms

    My guess is the Sims doesn't actually look at parts of the house as rooms. I haven't played the newest one though. In the first 2 you could put anything in any part of the house. Perhaps you should explain a specific problem you're trying to overcome. For example I believe you could paint the whole floor of a room with a new type of flooring, but if that was the case I'd say use almost a breadth-first search pathfinding algorithm. Paint the tile they click on, then all the tiles around it, then all the tiles around those. The only rule would be don't go through a wall.
  12. If you have a large vertical difference then extend your quadtree into an oct-tree.
  13. An Object-Oriented Renderer?

    The two models I've seen most often either have each object know how to render itself, or a "renderer" which knows how to render the various objects in your game. The first one feels more intuitive, but it's coupling your objects to the API if you're not careful. The second one would make it easier to be API agnostic in regards to your graphics API, since all the rendering code is centralized. Either works, as do many other models.
  14. function be made more efficient?

    As has been said twice, you have a very odd implementation in the middle of your loop and should really try to grasp what shadow told you because it avoids a TON of looping (number of tiles * tiles wide * tiles high). But another point is, what does "reduces the fps by 1/3" mean? And compared to what? If you were drawing nothing and it was running at 600fps and now you're drawing the screen and it runs at 400fps that's no big deal.
  15. Scrolling a vertical background

    A lot of your thinking seems to be based on the idea that the elements on screen are like cardboard cutouts that need to be moved around, and all I can keep picturing is these moving floor tiles: