[QUOTE=Ziks;35894034]Could I get some of you to test how well / if my city generator and renderer works on your machines?
The city generated is very basic at the moment with only one type of building with no detail. I've only tested on nVidia cards so I expect some horrible bug on ATI cards. You should be getting a solid 60 FPS.
[IMG]http://puu.sh/tRyn[/IMG]
[URL="http://puu.sh/tRxZ"]Download[/URL]
readme.txt:
[code]Keys:
WASD - Move camera
QE - Rotate camera
X - Toggle interior view
M - Toggle map view
Mouse Wheel - Zoom[/code]
Oh also G to generate a new city.[/QUOTE]
Works fine on Mobility Radeon HD5730 locked at 60fps.
How are you generating those maps? I am working on a fallout-esque game and large broken down settlements would be great.
[QUOTE=Ziks;35894034]Could I get some of you to test how well / if my city generator and renderer works on your machines?
The city generated is very basic at the moment with only one type of building with no detail. I've only tested on nVidia cards so I expect some horrible bug on ATI cards. You should be getting a solid 60 FPS.
[IMG]http://puu.sh/tRyn[/IMG]
[URL="http://puu.sh/tRxZ"]Download[/URL]
readme.txt:
[code]Keys:
WASD - Move camera
QE - Rotate camera
X - Toggle interior view
M - Toggle map view
Mouse Wheel - Zoom[/code]
Oh also G to generate a new city.[/QUOTE]
Works fine on my GTX 570. I'll try it on my linux partition in a bit. I know I had some issues with input/framerate in my OpenTK game on Linux/OSX and I recently figured out how to fix them.
[editline]a[/editline]
Runs just fine on Linux.
[QUOTE=Ziks;35894034]Could I get some of you to test how well / if my city generator and renderer works on your machines?
The city generated is very basic at the moment with only one type of building with no detail. I've only tested on nVidia cards so I expect some horrible bug on ATI cards. You should be getting a solid 60 FPS.
[IMG]http://puu.sh/tRyn[/IMG]
[URL="http://puu.sh/tRxZ"]Download[/URL]
readme.txt:
[code]Keys:
WASD - Move camera
QE - Rotate camera
X - Toggle interior view
M - Toggle map view
Mouse Wheel - Zoom[/code]
Oh also G to generate a new city.[/QUOTE]
GTX560ti, solid 60FPS.
[QUOTE=WTF Nuke;35894135]How are you generating those maps? I am working on a fallout-esque game and large broken down settlements would be great.[/QUOTE]
Pretty much just this function. It's a bit messy, so I'll explain it tomorrow after I get some sleep.
[csharp]private void Subdivide( District district, int depth,
int borderLeft, int borderTop,
int borderRight, int borderBottom, Random rand )
{
int nextBorder = depth < 4 ? 3 : depth < 6 ? 2 : 1;
int minHorz = 0;
bool fitHorz = false;
int minVert = 0;
bool fitVert = false;
while ( ( minHorz + nextBorder ) * 2 + borderTop + borderBottom <= district.Height &&
!( fitHorz = WillFit( district.Width - borderLeft - borderRight, minHorz, true ) ) )
++minHorz;
while ( ( minVert + nextBorder ) * 2 + borderLeft + borderRight <= district.Width &&
!( fitVert = WillFit( minVert, district.Height - borderTop - borderBottom, true ) ) )
++minVert;
bool horz = fitHorz && ( !fitVert || rand.Next( district.Width * district.Width + district.Height * district.Height )
>= district.Width * district.Width );
if ( horz )
{
int min = borderTop + nextBorder + minHorz;
int max = district.Height - borderBottom - minHorz - nextBorder;
int mid = ( min + max ) / 2;
district.Split( true, rand.Next( ( min + mid ) / 2, ( mid + max ) / 2 ) );
Subdivide( district.ChildA, depth + 1, borderLeft, borderTop, borderRight, nextBorder, rand );
Subdivide( district.ChildB, depth + 1, borderLeft, nextBorder, borderRight, borderBottom, rand );
}
else if( !horz && fitVert )
{
int min = minVert + borderLeft + nextBorder;
int max = district.Width - borderRight - minVert - nextBorder;
int mid = ( min + max ) / 2;
district.Split( false, rand.Next( ( min + mid ) / 2, ( mid + max ) / 2 ) );
Subdivide( district.ChildA, depth + 1, borderLeft, borderTop, nextBorder, borderBottom, rand );
Subdivide( district.ChildB, depth + 1, nextBorder, borderTop, borderRight, borderBottom, rand );
}
else
{
BlockGenerator gen = GetRandomBlockGenerator( district.Width - borderLeft - borderRight,
district.Height - borderTop - borderBottom, rand );
district.SetBlock( gen.Generate( district.X, district.Y, district.Width, district.Height,
borderLeft, borderTop, borderRight, borderBottom, rand ) );
}
}[/csharp]
[QUOTE=Ziks;35894034]Could I get some of you to test how well / if my city generator and renderer works on your machines?
The city generated is very basic at the moment with only one type of building with no detail. I've only tested on nVidia cards so I expect some horrible bug on ATI cards. You should be getting a solid 60 FPS.
[IMG]http://puu.sh/tRyn[/IMG]
[URL="http://puu.sh/tRxZ"]Download[/URL]
readme.txt:
[code]Keys:
WASD - Move camera
QE - Rotate camera
X - Toggle interior view
M - Toggle map view
Mouse Wheel - Zoom[/code]
Oh also G to generate a new city.[/QUOTE]
Perfect 60 on a 6870 on Windows 8.
[QUOTE=Ziks;35894034]Could I get some of you to test how well / if my city generator and renderer works on your machines?
The city generated is very basic at the moment with only one type of building with no detail. I've only tested on nVidia cards so I expect some horrible bug on ATI cards. You should be getting a solid 60 FPS.
[IMG]http://puu.sh/tRyn[/IMG]
[URL="http://puu.sh/tRxZ"]Download[/URL]
readme.txt:
[code]Keys:
WASD - Move camera
QE - Rotate camera
X - Toggle interior view
M - Toggle map view
Mouse Wheel - Zoom[/code]
Oh also G to generate a new city.[/QUOTE]
Doesn't work at all here.
[img_thumb]http://bit.ly/KbyFVq[/img_thumb]
Nvidia GTX 260 linux.
Also crashes when generating a new city
[code]Unhandled Exception: System.Exception: OpenGL hates your guts: InvalidOperation
at Zombles.Graphics.VertexBuffer.CheckForError () <0x0007a>
at Zombles.Graphics.VertexBuffer.SetData<single> (single[]) <0x00091>
at Zombles.Geometry.City.UpdateVertexBuffer () <0x0006e>
at Zombles.Geometry.Generation.CityGenerator.Generate (int,int,System.Random) <0x0005f>[/code]
I love the error message.
[QUOTE=Ziks;35894034]Could I get some of you to test how well / if my city generator and renderer works on your machines?
The city generated is very basic at the moment with only one type of building with no detail. I've only tested on nVidia cards so I expect some horrible bug on ATI cards. You should be getting a solid 60 FPS.
[IMG]http://puu.sh/tRyn[/IMG]
[URL="http://puu.sh/tRxZ"]Download[/URL]
readme.txt:
[code]Keys:
WASD - Move camera
QE - Rotate camera
X - Toggle interior view
M - Toggle map view
Mouse Wheel - Zoom[/code]
Oh also G to generate a new city.[/QUOTE]
Fine on GTX460M at 60FPS (Windows 7)
[QUOTE=Ziks;35894034]Could I get some of you to test how well / if my city generator and renderer works on your machines?
The city generated is very basic at the moment with only one type of building with no detail. I've only tested on nVidia cards so I expect some horrible bug on ATI cards. You should be getting a solid 60 FPS.
[IMG]http://puu.sh/tRyn[/IMG]
[URL="http://puu.sh/tRxZ"]Download[/URL]
readme.txt:
[code]Keys:
WASD - Move camera
QE - Rotate camera
X - Toggle interior view
M - Toggle map view
Mouse Wheel - Zoom[/code]
Oh also G to generate a new city.[/QUOTE]
works fine on HD 6620G
59.90-60 fps
Could anyone point me to some garbage collection methods? I've heard about ref-counting before and that seems to fit my needs, but I'd like to learn a bit of a broader basis for this stuff before implementing anything.
[QUOTE=Ziks;35894034]Could I get some of you to test how well / if my city generator and renderer works on your machines?
The city generated is very basic at the moment with only one type of building with no detail. I've only tested on nVidia cards so I expect some horrible bug on ATI cards. You should be getting a solid 60 FPS.
[IMG]http://puu.sh/tRyn[/IMG]
[URL="http://puu.sh/tRxZ"]Download[/URL]
readme.txt:
[code]Keys:
WASD - Move camera
QE - Rotate camera
X - Toggle interior view
M - Toggle map view
Mouse Wheel - Zoom[/code]
Oh also G to generate a new city.[/QUOTE]
Works fine here. 5750 58-60fps
[QUOTE=Jawalt;35894774]Could anyone point me to some garbage collection methods? I've heard about ref-counting before and that seems to fit my needs, but I'd like to learn a bit of a broader basis for this stuff before implementing anything.[/QUOTE]
There's basically only two main types; reference counting and mark-and-sweep.
Reference counting is simple and fast, but it has two big problems:
1. If you forget to increment or decrement a reference anywhere, everything goes to shit and you end up with a bug that's very difficult to locate.
2. It fails for reference cycles. i.e. if A references B and B references A, simple reference counting will never free either one, even if both are inaccessible.
Mark-and-sweep is the process of actually going through and marking which objects can be reached by traversing each object and all its references, but it means that you get the typical 'GC lag' where the GC kicks in and everything just halts while it runs. There are incremental algorithms, but they just distribute the same overhead over time. Mark-and-sweep is generally not acceptable where you have tight time constraints, but it is much more reliable and convenient than reference counting.
Can anyone give me the quick run-down on implementing a scripting system for use with entities for a game? I have used GLua before and am somewhat familiar with how that works, but I wouldn't know how to implement from the ground up for a non pre-existing entity system.
[QUOTE=Lord Ned;35895475]Can anyone give me the quick run-down on implementing a scripting system for use with entities for a game? I have used GLua before and am somewhat familiar with how that works, but I wouldn't know how to implement from the ground up for a non pre-existing entity system.[/QUOTE]
If you're looking for something similar to GMod's scripted entity system, HL2:SB exists for this purpose.
You have a bare-bones entity which has its own reference table, and each of your internal methods call the scripted methods, the functions from that table for that entity.
The Android tablet I have is the Coby Kyros. (It was free). It has an 800MHz Arm 11 processor but still barley runs Angry Birds. However it does run that beta of Phyzicle well enough. Fluids are a bit slow as well as moving the camera view and stuff but I blame that on the resistive touch screen.
[QUOTE=ROBO_DONUT;35895040]There's basically only two main types; reference counting and mark-and-sweep.
Reference counting is simple and fast, but it has two big problems:
1. If you forget to increment or decrement a reference anywhere, everything goes to shit and you end up with a bug that's very difficult to locate.
2. It fails for reference cycles. i.e. if A references B and B references A, simple reference counting will never free either one, even if both are inaccessible.
Mark-and-sweep is the process of actually going through and marking which objects can be reached by traversing each object and all its references, but it means that you get the typical 'GC lag' where the GC kicks in and everything just halts while it runs. There are incremental algorithms, but they just distribute the same overhead over time. Mark-and-sweep is generally not acceptable where you have tight time constraints, but it is much more reliable and convenient than reference counting.[/QUOTE]
You're forgetting generational and concurrent. .NET (and as of their most recent release, Mono) use a generational garbage collection system. It's pretty neat, but the literature on the subject is quite large, however it's sits mostly in academic papers, and aside from the many closed source systems (or undocumented/not widely used system's like Mono's SGen) there are very few real world examples of it. Mark and sweep doesn't actually dictate that the GC needs to halt the program, it just happens to be that most mark and sweep systems out there are of the stop-the-world (and my heart </3) type. You've also got a trend recently in parallel garbage collection (parallel and concurrent doesn't always mean at the same time :v:). In a parallel system, you can simply mark (and sweep!) multiple objects at the same time, but the world is still stopped. Think of it as delegating 16 free tasks within a task pool. They're all going to be run, but the task pool needs to finish freeing all 16 tasks before it will continue executing others that have been queued.
In the end though all garbage collectors basically work the same: determine objects that are unreachable and then get rid of them. Whether they do this with lock free structures, runtime bounds checking, stack scanning (blech!), or a number determining if the object is in a given generation, is entirely up to the author, and in the case of some VM's (the JVM Hotspot collector comes to mind) will switch depending on the situation. The type of garbage collection, as well as assumptions about how objects are used/treated is also a result of a weak vs strong and static vs dynamic typing system.
Sometimes however, some systems just give up and go back to ref counting (see: ObjC's ARC vs the ObjC 2.0 garbage collector). In games, ref counting is fairly popular because it's easy to know when an object is allocated or deallocated within a system (and is easier to see within a debugger). Something like an incremental system can interfere with that as the actual run/behavior of the system will vary between repeated runs.
I've got a book sitting here next to me actually called "The Garbage Collection Handbook" there is a really old printing run from the 90's (which is VERY out of date), but they recently published a newer edition in 2011 (with all the algorithms you could ever want on parallel and concurrent gc's). I'll leave the amazon search for it up to the reader. It's expensive (about 66 USD) but I think it's worth it if you're interested enough in the subject. (which I was :v:)
[URL="http://dl.dropbox.com/u/27714141/Untitled.png"][IMG]http://dl.dropbox.com/u/27714141/Untitled.png[/IMG][/URL]
I love my new monitor.
Why's it on the side?
[QUOTE=WTF Nuke;35896807]Why's it on the side?[/QUOTE]
Code visibility.
That's the second one by the way, dedicated to IDEs and console prompts.
Aight I'm working on a really simple horror game in XNA and am curious how I would add a simple flash light to my game. By simple I mean like cut and dry flash light no shadows or anything. More a less like a mask. I will gladly post up my game after I get this part done. Besides that it's pretty much done.
Ok guys. I'm making another XNA game here. This time an isometric viewpoint game.
I really don't have a clue about techniques and I'm probably doing a lot of things wrong.. However:
Each Tile is its own tile in its own class.
There is grid class that holds a 2d array of the Tile class.
Each Tile is a sprite that looks like this:[img]http://i.imgur.com/cpncz.png[/img]
When displaying the grid I just moved them around to fit nicely.
When using rectangles, how can I put them at an angle without disturbing the sprite that is attached to the rectangle?
[t]http://i.imgur.com/QyCZt.png[/t]
[QUOTE=Zombiedance;35897057]Aight I'm working on a really simple horror game and am curious how I would add a simple flash light to my game. By simple I mean like cut and dry flash light no shadows or anything. More a less like a mask. I will gladly post up my game after I get this part done. Besides that it's pretty much done.[/QUOTE]
Just draw a huge black image with a clear part in the middle for where the 'light' is supposed to be.
[QUOTE=Mr_Razzums;35897082]iso stuff[/QUOTE]
[URL]http://www.wildbunny.co.uk/blog/2011/03/27/isometric-coordinate-systems-the-modern-way/[/URL]
[QUOTE=chimitos;35897100]Just draw a huge black image with a clear part in the middle for where the 'light' is supposed to be.[/QUOTE]
I did that but it doesn't look to nice.
-snip-
[QUOTE=chimitos;35897100]Just draw a huge black image with a clear part in the middle for where the 'light' is supposed to be.
[URL]http://www.wildbunny.co.uk/blog/2011/03/27/isometric-coordinate-systems-the-modern-way/[/URL][/QUOTE]
Seems like it could be of value! Thanks!
Textures as promised, the developers at vatra have had some nice photoshop fun:
Some placeholders
[img]http://i.imgur.com/tccq7.png[/img][img]http://i.imgur.com/crmjH.png[/img]
Entity zone tag images
[img]http://i.imgur.com/VQgVT.png[/img][img]http://i.imgur.com/SDAhv.png[/img]
Beretta with bump map
[img]http://i.imgur.com/Fopiz.png[/img][img]http://i.imgur.com/U0l6T.png[/img]
[QUOTE=BlkDucky;35894235]GTX560ti, solid 60FPS.[/QUOTE]
GTX 560 Ti master race!
Honestly though, it's a (very) decently priced card to performance ratio.
[QUOTE=COBRAa;35898721]GTX 560 Ti master race!
Honestly though, it's a (very) decently priced card to performance ratio.[/QUOTE]
8800GT represent
best card ever
[QUOTE=swift and shift;35898928]8800GT represent
best card ever[/QUOTE]
I had the GTX. It was fine until the soldering melted.
I'm glad the game seems to be running fine for almost all of you, did you all zoom out as far as you could?
And I'll look into getting it working on Linux today.
[QUOTE=Ziks;35894034]Could I get some of you to test how well / if my city generator and renderer works on your machines?
The city generated is very basic at the moment with only one type of building with no detail. I've only tested on nVidia cards so I expect some horrible bug on ATI cards. You should be getting a solid 60 FPS.
[img]http://puu.sh/tRyn[/img]
[URL="http://puu.sh/tRxZ"]Download[/URL]
readme.txt:
[code]Keys:
WASD - Move camera
QE - Rotate camera
X - Toggle interior view
M - Toggle map view
Mouse Wheel - Zoom[/code]
Oh also G to generate a new city.[/QUOTE]
This is what I get on my ATI Mobility Radeon HD 3450.
[img]http://puu.sh/tVWy.png[/img]
Sorry, you need to Log In to post a reply to this thread.