[QUOTE=Overv;28401567]Yeah, found plenty of evidence. His IP was in the same range as one of nullsquared's ips, null had an alt with the name "infinity^2" and his posts were really similar.[/QUOTE]
Even without all of that, the post just screams null :P
[QUOTE=Overv;28401567]Yeah, found plenty of evidence. His IP was in the same range as one of nullsquared's ips, null had an alt with the name "infinity^2" and his posts were really similar.[/QUOTE]
I called it, ages ago.
Tried out C# again after a year and a half or more of not even anything but straight C/C++. It's ridiculous how easy it is, my Programmer's OCD can't handle that I don't have to free everything myself though.
[QUOTE=Overv;28401567]Yeah, found plenty of evidence. His IP was in the same range as one of nullsquared's ips, null had an alt with the name "infinity^2" and his posts were really similar.[/QUOTE]
Do you have any evidence that actually proves it's him, and not just coincidental evidence?
[QUOTE=Apple Pi;28404374]Do you have any evidence that actually proves it's him, and not just coincidental evidence?[/QUOTE]
Same posting style isn't coincidental.
I'm working on (with my friend) -- yes you guessed it -- Another Infiniminer-inspired game.
Although, this one is different. Not only can you walk as far as you want in any direction (like Minecraft), you can also build as high as you want, or dig as deep as you want. This opens up for extreme, beautiful and breathtaking (for a voxel engine) terrain. One place can be with a large desert, which may take half an hour to walk across -- while another part of the world contains huge, snowy mountains, similar to those found in Himalaya.
Here are some screenshots of our current progress:
In this first picture, a total of around 750 chunks, each the size of 32*32*32 blocks, are rendered over 60 times every second. The largest world tested to date had 3800 chunks, and still maintained 60 fps (I guess the algorithm I developed to calculate which faces should be rendered does a pretty good job). The mountain in this screenshot is about 120 blocks tall.
[IMG]http://i747.photobucket.com/albums/xx120/Azzi777/Untitled-6.png[/IMG]
As you might have noticed, the world generator is using bilinear interpolation to calculate the terrain. I will most likely change this to bicubic, which should make the terrain much smoother, and get rid of the artifact lines.
[IMG]http://i747.photobucket.com/albums/xx120/Azzi777/Untitled2.png[/IMG]
[QUOTE=Overv;28404454]Same posting style isn't coincidental.[/QUOTE]
What would his 'same posting style' be? Everybody here types the same way.
[QUOTE=Apple Pi;28404578]What would his 'same posting style' be? Everybody here types the same way.[/QUOTE]
no, people have different styles of writing you can use to tell them apart.
Since null was always helpful, had constructive criticism at all times and started every one of his posts with hey...
[QUOTE=Matte;28404470]I'm working on (with my friend) -- yes you guessed it -- Another Infiniminer-inspired game.
Although, this one is different. Not only can you walk as far as you want in any direction (like Minecraft), you can also build as high as you want, or dig as deep as you want. This opens up for extreme, beautiful and breathtaking (for a voxel engine) terrain. One place can be with a large desert, which may take half an hour to walk across -- while another part of the world contains huge, snowy mountains, similar to those found in Himalaya.
Here are some screenshots of our current progress:
In this first picture, a total of around 750 chunks, each the size of 32*32*32 blocks, are rendered over 60 times every second. The largest world tested to date had 3800 chunks, and still maintained 60 fps (I guess the algorithm I developed to calculate which faces should be rendered does a pretty good job). The mountain in this screenshot is about 120 blocks tall.
[img_thumb]http://i747.photobucket.com/albums/xx120/Azzi777/Untitled-6.png[/img_thumb]
As you might have noticed, the world generator is using bilinear interpolation to calculate the terrain. I will most likely change this to bicubic, which should make the terrain much smoother, and get rid of the artifact lines.
[img_thumb]http://i747.photobucket.com/albums/xx120/Azzi777/Untitled2.png[/img_thumb][/QUOTE]
Nice :D
care to give more details?
slow punch
Got my htc desire yesterday, don't know if I'm going to create apps tho. My camera class is working too.
Will show you some content when I have some kind of map viewer, probably VBSP.
[QUOTE=Darwin226;28404693]Since null was always helpful, had constructive criticism at all times and started every one of [b]his posts with hey...[/b][/QUOTE]
gimmick
Anyway, it wasn't my decision to ban him. I only presented the evidence.
Creating applications for mobile devices seems to be the future of commercial programming success. I think you should try.
[QUOTE=Matte;28404470]Looks at pictures.[/QUOTE]
Release! Release! I want to play test.
[editline]3rd March 2011[/editline]
XNA for the Xbox 360 is so buggy, it doesn't even find the Xbox half of the time.
[QUOTE=Richy19;28405035]Nice :D
care to give more details?[/QUOTE]
What do you want to know?
[QUOTE=DevBug;28405613]Release! Release! I want to play test.[/QUOTE]
I will probably get an alpha version up as soon as we get the physics engine up and going.
[QUOTE=DevBug;28405613]Release! Release! I want to play test.
[editline]3rd March 2011[/editline]
XNA for the Xbox 360 is so buggy, it doesn't even find the Xbox half of the time.[/QUOTE]
Do you need an XNA membership/gold account to test games your developing on your xbox?
[editline]3rd March 2011[/editline]
[QUOTE=Matte;28405934]What do you want to know?[/QUOTE]
Just some more tchnical details, like what language, DX or OGL...
[QUOTE=Richy19;28406598]Do you need an XNA membership/gold account to test games your developing on your xbox?
[editline]3rd March 2011[/editline]
Just some more tchnical details, like what language, DX or OGL...[/QUOTE]
Yes you need an App Hub membership, gold is just required for online features like networking.
[editline]3rd March 2011[/editline]
[QUOTE=Matte;28405934]What do you want to know?
I will probably get an alpha version up as soon as we get the physics engine up and going.[/QUOTE]
Are you just going to use AABB?
[QUOTE=Richy19;28406598]Just some more tchnical details, like what language, DX or OGL...[/QUOTE]
It started out as an OpenGL project for me (OpenTK in C#, actually), but as my friend joined, we moved to XNA, which seems to work fine i terms of performance and abilities. We use one vertex and index buffer per chunk, and a self-written algorithm to determine hidden faces. The landscape generator, which uses random points and a bilinear interpolation between them, is just a placeholder for the future generator which will use bicubic interpolation (which leads to much smoother results without artifacts).
The world is divided into regions, which each hold 96x96 chunks (There are four regions in the pictures, one covering each quadrant from position(0,0), you only see a circle with a radius of 5 chunks, though). Each chunk contains 32*32*32 blocks.
[editline]3rd March 2011[/editline]
[QUOTE=DevBug;28406928]Are you just going to use AABB?[/QUOTE]
Yep.
How much memory are you typically using? And how many visible faces are there in those pictures? Looks good btw.
I was thinking about how to process a singly-linked list backwards, and so far I have come up with this way:
[cpp]
void delete_backwards(Node* list) {
if (list) {
delete_backwards(list->next);
// process here
}
}[/cpp]
And as far as I can see, that's about the only way to do it, short of iterating it [i]n[/i] times and processing the last one each time. Does anyone know of a better way?
That's pretty much how you delete a linked list. If you don't need to do it with recursion:
[cpp]
void delete_backwards(Node* List)
{
Node* Current = List;
while(Current)
{
// Process here
Current = Current->next;
}
}
[/cpp]
[QUOTE=DevBug;28407852]That's pretty much how you delete a linked list. If you don't need to do it with recursion:
[cpp]
void delete_backwards(Node* List)
{
Node* Current = List;
while(Current)
{
// Process here
Current = Current->next;
}
}
[/cpp][/QUOTE]
That doesn't process it backwards though.
[editline]3rd March 2011[/editline]
I accidentally left it named [i]delete[/i]_backwards, but it should be named process_backwards.
[QUOTE=yakahughes;28407923]That doesn't process it backwards though.[/QUOTE]
Then you need to use a double linked list if you don't want to do it with recursion.
[cpp]
struct Node
{
// Data.
struct Node* Next;
struct Node* Prev;
};
void delete_backwards(Node* List)
{
Node* Current = List;
while(Current)
{
// Process here
Current = Current->Prev;
}
}
[/cpp]
[QUOTE=knighty;28407526]How much memory are you typically using? And how many visible faces are there in those pictures? Looks good btw.[/QUOTE]
The game, using the world in the picture, uses about 550 000 K. That's 750 chunks. If I increase the world to 3800 chunks, it uses 1 200 000 K. The chunks are memory killers, though, we are doing what we can to replace redundant integers with shorts and bytes as we go.
The world in the picture has 471380 faces (each have 4 vertices), an example 3800-chunk world renders 1426245 faces. Those are just example numbers. The face count varies with the seed of the map.
Here is a picture of a random 3800-chunk map. The radius is 9 chunks.
[IMG]http://i747.photobucket.com/albums/xx120/Azzi777/Untitled3.png[/IMG]
Are you unloading chunks that aren't being rendered?
[QUOTE=Matte;28407027]We use one vertex and index buffer per chunk[/quote]
I have no experience writing using any 3D API, but what does rendering have to with the individual chunks? I thought the chunks only existed to store the voxel data and had nothing to do with rendering.
[QUOTE=Matte;28407027]The world is divided into regions, which each hold 96x96 chunks[/QUOTE]
Are the regions infinitely deep? If yes, wouldn't that cause problems in vertical maps?
[QUOTE=yakahughes;28407923]That doesn't process it backwards though.
[editline]3rd March 2011[/editline]
I accidentally left it named [i]delete[/i]_backwards, but it should be named process_backwards.[/QUOTE]
Ah! That would work, just be careful with the stack.
[QUOTE=yakahughes;28407659]I was thinking about how to process a singly-linked list backwards, and so far I have come up with this way:
[cpp]
void delete_backwards(Node* list) {
if (list) {
delete_backwards(list->next);
// process here
}
}[/cpp]
And as far as I can see, that's about the only way to do it, short of iterating it [i]n[/i] times and processing the last one each time. Does anyone know of a better way?[/QUOTE]
Well you could create a temporary array of all the pointers in the linked list and then iterate through the array in an inverse order.
[QUOTE=yakahughes;28407659]I was thinking about how to process a singly-linked list backwards, and so far I have come up with this way:
[cpp]
void delete_backwards(Node* list) {
if (list) {
delete_backwards(list->next);
// process here
}
}[/cpp]
And as far as I can see, that's about the only way to do it, short of iterating it [i]n[/i] times and processing the last one each time. Does anyone know of a better way?[/QUOTE]
[code]void delete_backwards(Node* List)
{
std::stack<Node*> ptrStack;
Node* current = List;
while(current)
{
ptrStack.push(current);
current = current->next;
}
while(ptrStack.size() != 0)
{
delete ptrStack.top();
ptrStack.pop();
}
}
[/code]
[editline]3rd March 2011[/editline]
[QUOTE=ThePuska;28408290]Well you could create a temporary array of all the pointers in the linked list and then iterate through the array in an inverse order.[/QUOTE]
Ninjad while I was writing shit. Damn.
[QUOTE=Robber;28408020]Are you unloading chunks that aren't being rendered?[/quote]
No, but we only render visible faces.
[QUOTE=Robber;28408020]I have no experience writing using any 3D API, but what does rendering have to with the individual chunks? I thought the chunks only existed to store the voxel data and had nothing to do with rendering.[/QUOTE]That's right, the chunks have nothing to do with the rendering, but the algorithm to determine which faces should be rendered works per chunk, so it's logical to have one vertex/index buffer per chunk.
[QUOTE=Robber;28408020]Are the regions infinitely deep? If yes, wouldn't that cause problems in vertical maps?[/QUOTE] The regions only store terrain data. It's more of an abstract class, and does not directly interact with the chunks.
Sorry, you need to Log In to post a reply to this thread.