My game lets the players host their own server. If I release the server and let people host one for themselves, will it still be accepted to the AppStore? I haven't found any games on the AppStore that explicitly do this, so I don't really know myself.
[QUOTE=likesoursugar;27762637]My net lib is doing ok. Supporting multiple client connections to the server and is thread safe.
Using an address class for ip addresses + port and my own thread class for threads and mutexes.
[img_thumb]http://img375.imageshack.us/img375/5976/3fe02afa74b97c2777b8c73.png[/img_thumb][/QUOTE]
Use selectors.
Never use referenced smart pointers guys.
It screws everything over.
Just spent the last 30 mins finding a bug that was fixed with the removal of an &.
I could either wait for Hexxeh/compwhizzi to make the API output BBCode for me to parse or turn the HTML into BBCode myself. Hmm.
[img]http://gyazo.com/2a94bf9efd4a61589d27b5cb6e084d84.png[/img]
[QUOTE=likesoursugar;27763511]explain.[/QUOTE]
[url]http://msdn.microsoft.com/en-us/library/ms740141(v=vs.85).aspx[/url]
This is amazing! The modified DirectX 9 used by the XBox removes the FFP.
Does anyone know where I can get the C/C++ OpenGL headers and libraries? They didn't come with the IDE and I can't seem to find them anywhere.
[QUOTE=Irtimid;27764233]Does anyone know where I can get the C/C++ OpenGL headers and libraries? They didn't come with the IDE and I can't seem to find them anywhere.[/QUOTE]
If you are using windows, get the platform SDK. That has OpenGL headers.
Found them, thanks.
It's amazing what family bonding can bring to mind.
It was time for dinner so my family and I ate and watched a movie, and then it sprung to me what was wrong with my A* algorithm
[img]http://i52.tinypic.com/sg5ms5.jpg[/img]
But it's fixed now and works with just about anything I throw at it. :D
I honestly think it's just being away from the computer that somehow lets your mind solve the problems you're having. Mainly sleeping though. Many times I've stayed up late trying to solve just one bug, but I give up, go to bed, wake up, realize what the problem was and what the solution is.
Then maybe you can tell my why my XBox resets and there is nothing in my debug log...
To anyone who is experienced with Android development:
How would I have two buttons, side by side, each taking up half the screen?
[QUOTE=Robert64;27753095]Can someone give me something quick to program in my language? Could be console based or graphics based (since I have an SFML library).[/QUOTE]
I know I'm late, but one way to prove your language is 'production ready' is to implement it in itself.
Get to it, cowboy!
I need to write a debugger with breakpoints, it's not that hard (due to the rich amount of resources on writing a debugger for windows and the same functions are available) but: What are my performance concerns with using sockets? I need to reduce my memory foot print as much as possible but I also need a readable debugger, so I would store my program database files on the PC what would this mean?
Why not just use an IDE built-in debugger?
[QUOTE=geel9;27766049]To anyone who is experienced with Android development:
How would I have two buttons, side by side, each taking up half the screen?[/QUOTE]
LinearLayout + both buttons have android:layout_height="fill_parent"?
I literally just started messing with the Android UI stuff. If that doesn't work, you may want to try a TableLayout.
But generally having two huge buttons over the entire screen isn't a good design choice.
Hey Spocco,
Here's my best attempt so far:
[img]http://anyhub.net/file/1F3n-8824ms.png[/img]
Hardware is AMD Athlon64 X2 4800+ and 2GB DDR2 800 RAM. Chrome and FireFox running in the background. The timer only takes into account the A* pathfinding loop; image loading, array setup, etc. is not counted, as you said with your C++ version.
Here's the main A* code:
[cpp]
private void solveImage(bool[] closed, int w, int h, List<int> sol, out long duration)
{
int[] gScores = new int[w * h];
int[] parents = new int[w * h];
int mv = int.MaxValue;
for (int i = 0; i < w * h; ++i)
{
gScores[i] = mv;
parents[i] = -1;
}
int[][] offsets = new int[4][] { new[] { 1, 0 }, new[] { -1, 0 }, new[] { 0, -1 }, new[] { 0, 1 } };
Heap<int, ScoredPoint> open = new Heap<int, ScoredPoint>();
int endX = w - 1;
int endY = h - 1;
gScores[0] = 0;
Heap<int, ScoredPoint>.Pair best = open.makePair(heuristic(0, 0, endX, endY), new ScoredPoint(0, 0));
open.push(best);
duration = 0;
Stopwatch timer = new Stopwatch();
timer.Start();
while (open.hasMore())
{
best = open.pop();
int x = best.t.x;
int y = best.t.y;
int idx = x + y * w;
if (closed[idx])
continue;
if (x == endX && y == endY)
{
timer.Stop();
duration = timer.ElapsedMilliseconds;
while (idx != -1)
{
sol.Add(idx);
idx = parents[idx];
}
break;
}
closed[idx] = true;
for (int i = 0; i < 4; ++i)
{
ScoredPoint s = new ScoredPoint(x + offsets[i][0], y + offsets[i][1]);
if (s.x < 0 || s.y < 0 || s.x >= w || s.y >= h)
continue;
int sIdx = s.x + s.y * w;
if (closed[sIdx])
continue;
int gs = gScores[idx] + 1;
if (gScores[sIdx] < gs)
continue;
gScores[sIdx] = gs;
int hs = heuristic(s.x, s.y, endX, endY);
parents[sIdx] = idx;
open.push(open.makePair(gs + hs, s));
}
}
}
[/cpp]
(As you can see, it starts the timer before the loop starts, and ends it once the path has been found.)
It's very messy at the moment. I'll release the full thing once I conclude my effort. 8 seconds doesn't beat your 6 seconds, but it does beat your 10 seconds - with no unsafe code, either. Of course, my hardware is slightly weaker, so that could have some sort of effect on it, too.
Was working on some support code and the open level dialog, then I decided to change the editor icons
[img]http://i51.tinypic.com/2j3qpeb.jpg[/img]
[QUOTE=Richy19;27755291]If your going to use C then use SDL[/QUOTE]
I'm not gonna use C. I need to compile the libraries for SFML .Net.
[QUOTE=Venice Queen;27767074]Why not just use an IDE built-in debugger?[/QUOTE]
Can't, I don't own a real development kit. I've got some good news:
[quote]
.\Game.cpp(26): Opened debug file.
.\Game.cpp(32): Creating Direct3D.
.\Game.cpp(36): Fetching video mode settings.
.\Game.cpp(55): Creating Direct3D device.
.\Game.cpp(63): Initalizing the game.
.\Game.cpp(70): Starting the game.
[/quote]
This means my engine creates the Direct3D Device (which is just a proxy, it calls static functions). The bad news: My update or render function triple faults the XBox.
[QUOTE=robmaister12;27767265]LinearLayout + both buttons have android:layout_height="fill_parent"?
I literally just started messing with the Android UI stuff. If that doesn't work, you may want to try a TableLayout.
But generally having two huge buttons over the entire screen isn't a good design choice.[/QUOTE]
Sorry, I meant horizontally.
EG
--STUFF UP HERE
--BUTTON-- --OTHER BUTTON--
--OTHER STUFF DOWN HERE--
oh, for that you'd definitely want the root view to be a TableLayout with 3 TableRows. Put two buttons in the 2nd TableRow, add "android:stretchColumns="0,1"" to your root TableLayout, and add "android:layout_span="0"" to the first button, and the same thing to the second button but with a 1 instead of a 0.
Again, I'm not sure if that'll work, but give it a shot.
I've been testing sorting algorithms to see which is fastest for sorting large amounts of data (like depth sorting ~5000 particles), and i believe i have a winner!
Some benchmarking on 4096 particles (a thousand iterations):
Insertion sort's average is 0.028 seconds, baddd
Bubble sort took 0.009 seconds, but it jumps up mightily if you drastically change the order of the particles.
Shell sort takes 0.006 seconds! and it stays consistent no matter how you change the particles.
Shell sort is very nice, now i can handle 4000+ particles with no lag :science:
Android app is coming along nicely.
[img]http://gyazo.com/4d575e8e3d8007331a3a0f078c9f950f.png[/img]
The main menu. You can choose to browse by category or choose a song ID to play. Soon you can search.
[img]http://gyazo.com/3ce442892005b4dd52b6254b9b3fe95d.png[/img]
The browse menu. The "more" and "less" buttons take you to the next and previous pages, respectively. They work at the moment. You can tap any song to play it. That also works too. The more and less buttons are what I need to take up half the screen width each.
[img]http://gyazo.com/306a2f9e5e6253b3681c4083f40d2c38.png[/img]
Playing a song. This UI is what needs the most work.
[b]All UI is in progress.[/b]
[QUOTE=limitofinf;27767666]8 seconds doesn't beat your 6 seconds, but it does beat your 10 seconds - with no unsafe code, either. Of course, my hardware is slightly weaker, so that could have some sort of effect on it, too.[/QUOTE]
Still, 8 seconds is very respectable for a language and runtime as rich as C# and .NET.
I think most of us can live with a small speed penalty like that. I know that nothing I write needs breakneck speed.
[QUOTE=Naelstrom;27767895]I've been testing sorting algorithms to see which is fastest for sorting large amounts of data (like depth sorting ~5000 particles), and i believe i have a winner!
Some benchmarking on 4096 particles (a thousand iterations):
Insertion sort's average is 0.028 seconds, baddd
Bubble sort took 0.009 seconds, but it jumps up mightily if you drastically change the order of the particles.
Shell sort takes 0.006 seconds! and it stays consistent no matter how you change the particles.
Shell sort is very nice, now i can handle 4000+ particles with no lag :science:[/QUOTE]
Wait, your insertion sort is slower than bubble sort? I know theoretically they have similar runtimes but the average experimental speed tends to be faster with insertion.. I know you said you're going to use shell sort, but I'm interested in the results of your insertion vs bubble sort.
[QUOTE=Naelstrom;27767895]I've been testing sorting algorithms to see which is fastest for sorting large amounts of data (like depth sorting ~5000 particles), and i believe i have a winner!
Some benchmarking on 4096 particles (a thousand iterations):
Insertion sort's average is 0.028 seconds, baddd
Bubble sort took 0.009 seconds, but it jumps up mightily if you drastically change the order of the particles.
Shell sort takes 0.006 seconds! and it stays consistent no matter how you change the particles.
Shell sort is very nice, now i can handle 4000+ particles with no lag :science:[/QUOTE]
That benchmark runs way too quickly to mean anything. One of the sorts could have been context switched while running, making it artificially slower than the other.
This is just great, when I run the predicated tiling sample for a bit (a minute or too) my XBox triple faults, restarts, then fails to start up for five to ten minutes. I think my XBox is faulty when it comes to predicated tiling. This really sucks, it's a beautiful thing.
[url]http://msdn.microsoft.com/en-us/library/bb464139.aspx[/url]
Thought about a few methods on how I was going to allocate my map for the A*. Came to a conclusion to use a sort of stack arithmetic based system with binary heaps, only instead of specifying which location to pop the index to, it'll automatically go to the closed list.
Sorry, you need to Log In to post a reply to this thread.