Saya mencoba membuat game dengan fisika newton.
Sebelum Anda membaca sisanya, ini adalah pertanyaan utama saya. Saya mencoba mencari jawaban untuk:
- Saya terus mendapatkan kesalahan yang muncul di jendela setelah saya mencoba dan menjalankan kode saya. Pustaka atau dll apa yang saya lewatkan?
Saya punya apel, jeruk, dan pensil. Saya sudah membaca sebagian besar dokumentasi dengan mesin fisika peluru, tapi sepertinya saya tidak bisa membuat apel berperilaku seperti selembar kertas (2d-ish). Mesin fisika Box2d dan semacamnya bukan yang saya inginkan. Saya tidak suka kotak di kehidupan nyata, apalagi di dunia cyber.
Saya ingin apel melayang ke tanah, jenis berayun bolak-balik seperti selembar kertas. Situs ini memberikan beberapa info berguna yang saya integrasikan ke dalam kode saya: htp: //www.3dbuzz.com/vbforum/showthread.php? 50854-Please-HELP !! -Simulating-paper-floating-to-ground
Saya memiliki ide ini untuk gim di mana Anda membuat objek berperilaku seperti jenis objek lainnya, tetapi simulasi gim saya tidak berfungsi.
Saya telah melewati terlalu banyak jenis apel untuk dihitung, dan tidak ada satupun yang mendekati. Saya sudah mencoba mencari orang lain yang telah mencoba hal serupa, (menggunakan googles seperti http://lmgtfy.com/?q=simluating+game+apples+in+real+life ), tetapi tidak ada apel yang pernah dikembalikan!
Jadi, saya pikir saya akan pergi ke wilayah baru di sini (jangan khawatir, saya akan membuka sumber teknik saya), dan itulah sebabnya hal-hal tidak bekerja untuk saya.
Saya sudah mencoba memprogram berbagai jenis apel, tapi mungkin saya perlu apel cyber? Saya tidak tahu di mana mendapatkan salah satu dari itu, mungkin di tempat seperti ini: http://cyberapples.com/ Situs itu sedang turun untuk saat ini - itu hanya berbicara tentang beberapa tempat sampah cgi atau sesuatu. Ada tips tentang ini juga?
Ini adalah bagian dari kode saya yang berkaitan dengan apel yang mensimulasikan permainan:
///... /* setup other objects in the room and other stuff */ ...
// see http://www.orangepippin.com/apples/arlet-swiss-gourmet
// for more arlet apple details
paper_2d_behaving_apple = new ArletApple[);
/ setup the arlet apple's general characteristics
paper_2d_behaving_apple.species = SPECIES.MALUS_DOMESTICA;
paper_2d_behaving_apple.parentage = PARENTAGE.GOLDEN_DELICIOUS_X_IDARED:
paper_2d_behaving_apple.introduced = make_year(1958);
paper_2d_behaving_apple.fruitColor = COLORS.red;
paper_2d_behaving_apple.fleshCOlor = APPLE_FLESH_COLORS::CREAM;
paper_2d_behaving_apple.fruitSize = GENERIC_FRUIT_SIZES.MEDIUM;
paper_2d_behaving_apple.GoodFor.add("eating fresh");
paper_2d_behaving_apple.GoodFor.add("cooking");
paper_2d_behaving_apple.GoodFor.add("use / keeping: 3 months or more");
paper_2d_behaving_apple.GoodFor.add("ripening PERIOD: 3 months or more");
paper_2d_behaving_apple.diseaseResistances = [DISEASE_RES::SCAB, DISEASE_RES::MILDEW];
///... (I cut some of this out for brevity's sake) ...
///* setup this specific apple's characteristics
paper_2d_behaving_apple.base_color = 0xff2000;
paper_2d_behaving_apple.bumpMap = BUMP_MAP_APPLE;
paper_2d_behaving_apple.texture = TEXTURE_REALISTIC_APPLE;
paper_2d_behaving_apple.feel_texture = SMOOTH;
paper_2d_behaving_apple.has_small_orangey_stripes = TRUE;
paper_2d_behaving_apple.DoesntHaveStem = FALSE;
paper_2d_behaving_apple.juicy = true; // needs a lowercase true for some reason
paper_2d_behaving_apple.has_bugs = false; // heck no it doesn't, I only buy good apples
///... (again I cut some stuff out so this post would'n't be too long) ...
// from http://www.3dbuzz.com/vbforum/showthread.php?50854-Please-HELP!!-Simulating-paper-floating-to-ground
// "i think reactor can do this, i would try cloth witha high air resistance and a very high stifness"
paper_2d_behaving_apple.addReactor(REactor());
// got this technique from http://www.gimptutorials.eu/html/clothify_filter_gimp_gnu.html
import gimp ; GIMP::Clothify(paper_2d_behaving_apple); pass
// / 7 should be high enough - it's a big number
paper_2d_behaving_apple.reactor.stiffness = 7.0f;
paper_2d_behaving_apple.reactor.airResistance = 5.0f; // high, but not "very high"
// setup the world the apple exists in
paper_2d_behaving_apple.owner = new BobFlanderson();
paper_2d_behaving_apple.owner.appearance = APPEARANCE_AWESOME;
paper_2d_behaving_apple.owner.clothes.size = CLOTHES_SIZE_MEDIUM;
paper_2d_behaving_apple.owner.owns_house = false;
paper_2d_behaving_apple.owner.apartment.sucks = true;
paper_2d_behaving_apple.owner.has_wife = false;
paper_2d_behaving_apple.viewSpace = LIVING_ROOM;
paper_2d_behaving_apple.RESTINGon = Kitchen.GetSurfaces()->COUNTER_BY_STOVE;
////... (also cut some more out here too) ...
// transform the paper behaving apple into something viewable
view_matrix = new ViewMatrix();
view_matrix.DoTransformation(paper_2d_behaving_apple);
view_matrix.makeViewable();
World->ApplyViewMatrix(view_matrix);
paper_2d_behaving_apple.RenderToNeakedEye();
// THIS IS WHERE I'm HAVING THE TROUBLE
actual_existing_apple_on_myCounter = new ExistingApple(paper_2d_behaving_apple);
actual_existing_apple_on_myCounter.bindInRealLive();
// THIS NEVER WORKS! I DON"T KNOW HOW YOU GUYS DO THIS STUFF!
actual_existing_apple_on_myCounter.Translate(LANGUAGES::ENGLISH);
// saw the IW_FIXED on some jam making site
// (http://www.madewithmarmalade.com/devnet/documentation#/api/api/group__IwGeomCore.html)
// - that's the closest I've come to seeing anything close to what
// I'm trying to do
actual_existing_apple_on_myCounter.TranslateTo(0, 0, IW_FIXED(10.0f));
apple_now_inAir = actual_existing_apple_on_myCounter;
// I know this is C++ code, but some ruby sites were saying that it's best
// to put an exclamation point after a function that modifies a physical
// object - no luck yet for me
apple_now_inAir.Drop!();
Seperti yang Anda lihat, konsep dasar saya turun, dan saya sangat deskriptif dengan nama variabel dan atribut objek. Saya mengatur dunia dengan sangat ringkas dan jelas, meskipun saya telah menyederhanakan dunia dalam game dibandingkan dengan dapur sebenarnya.
Saya pikir masalah ini mengikat paper_2d_behaving_apple
ke actual_existing_apple_on_myCounter
apel, dan kemudian mentransfer bahwa untuk satu di udara ( apple_now_inAir
);
Apa pun masalahnya, dan betapa pun baiknya saya memformat semuanya, sepertinya tidak ada yang terjadi. Di bawah ini adalah gambar bagaimana saya menjalankan program:
Adakah yang pernah mengalami ini sebelumnya? Terima kasih sebelumnya. Saya baru saja memulai dengan permainan pemrograman, setelah baru saja berganti karier, jadi jangan merasa buruk.
Terima kasih, Bob
apple_now_inAir.Drop!();
- adalah kerusuhan. Ada sesuatu tentang pos ini - ambisius, bingung, hancur ...