Search Results

Search found 2 results on 1 pages for 'aristarhys'.

Page 1/1 | 1 

  • Big level objects collision system for 2d game

    - by Aristarhys
    I read many variants today and get some knowledge in general, so here is a steps of mine thoughts in pictures (horrible paint.net ones). We need to develop grid system, so we check only thing near, perform simple check to cut out deep check, and at - last deep check like per-pixel collision check. Step 1 - Let p1, p2 are some sprites lets first just check with circle collision - because large distance between p1, p2 this fails and of course so we don't need test more deeply. But if we have not 2, but 20 objects, why we need to even circle test something so far outside of our view. Step 2 - Add basic column system, now we don't bother with p2 if it's in a column far from p1 column, so we even don't do circle test. But p3 is in the same col, so let do circle test, which of course will fail. Step 3 - Lets improve column system to the grid system with grid cell size just like p1, p2, p3 collision boxes, so we cut out things much top or below p1. And this is all great until comes BIG OBJs which is some kind of platforms. They are much bigger then grid cell. Circle test for will be successful, but deep check for whole big obj will fail And that the part I can't get. How do I store the grid position of big object? Like 4 grid coords for big object vertexes? And if one of them close to p1 do circle check for centre of big object then a deep one if succeed? Am I do it wrong? My possible solution:

    Read the article

  • NDK app onDestroy cleanup - how to DetachCurrentThread

    - by Aristarhys
    So if we attach we must detach thread after after it finish, right? JNIEnv* get_jni_env() { JNIEnv* res; JAVA_VM->GetEnv((void**) &res, JNI_VERSION_1_6);//Using cached JavaVM JAVA_VM->AttachCurrentThread(&res, NULL); return res; } I call next native method from @Override protected void onDestroy() of my Activity class void free_jni_manager() { JNIEnv* env = get_jni_env(); ... //Here i delete global refs (jclass) //JAVA_VM->DetachCurrentThread(); } ERROR: detaching thread with interp frames (count=16) - main thread still running and we try to detach it. Even if we take any function that use JNIEnv (for example calling java methods), putting DetachCurrentThread will cause same error. DetachCurrentThread works flawlessly if used in pthread function static void* thread_func(void* arg) { get_jni_env(); // attach new thread //Do thread stuff JAVA_VM->DetachCurrentThread();//thread done detached it with ok return NULL; } Do we need detach main thread then we done with JNI, there do it? Or then activity will be destroyed, it will freed itself with JavaVM? Do we need do call DestroyJavaVM() (just doing crash if use onDestroy), how free cached JavaVM or garbage cleaner will handle this? P.S. What benefits of using AttachCurrentThreadAsDaemon()

    Read the article

1