ฉันพยายามสร้างเกมด้วยฟิสิกส์นิวตัน
ก่อนที่คุณจะอ่านส่วนที่เหลือนี่เป็นคำถามหลักของฉันฉันพยายามหาคำตอบ:
- ฉันได้รับข้อผิดพลาดที่ปรากฏขึ้นในหน้าต่างหลังจากที่ฉันพยายามเรียกใช้รหัสของฉัน ฉันหายไปในไลบรารีหรือ dll ใด
ฉันมีแอปเปิ้ลส้มและดินสอ ฉันได้อ่านเอกสารส่วนใหญ่ด้วยเครื่องมือแสดงหัวข้อย่อยทางฟิสิกส์แล้ว แต่ฉันไม่สามารถทำให้แอปเปิ้ลทำตัวเหมือนกระดาษ (2d-ish) เครื่องยนต์ฟิสิกส์ Box2d และนั่นไม่ใช่สิ่งที่ฉันต้องการ ฉันไม่ชอบกล่องในชีวิตจริงปล่อยให้อยู่คนเดียวในโลกไซเบอร์
ฉันต้องการให้แอปเปิ้ลลอยลงไปที่พื้นแบบแกว่งไปมาเหมือนกระดาษแผ่นหนึ่ง ไซต์นี้ให้ข้อมูลที่เป็นประโยชน์บางอย่างที่ฉันรวมเข้ากับรหัสของฉัน: htp: //www.3dbuzz.com/vbforum/showthread.php? 50854- ได้โปรดช่วยด้วย !! - จำลองกระดาษลอยไปสู่พื้น
ฉันมีความคิดนี้สำหรับเกมที่คุณทำให้วัตถุมีพฤติกรรมเหมือนกับวัตถุประเภทอื่น แต่การจำลองเกมของฉันไม่ทำงาน
ฉันผ่านแอปเปิ้ลหลายประเภทมากเกินไปที่จะนับและไม่มีใครเข้ามาเลย ฉันลองค้นหาคนอื่นที่ลองใช้สิ่งที่คล้ายกัน (ใช้ googles เช่นhttp://lmgtfy.com/?q=simluating+game+apples+in+real+life ) แต่ไม่มีแอปเปิ้ลคืนมาเลย!
ดังนั้นฉันคิดว่าฉันกำลังจะเข้าสู่ดินแดนใหม่ที่นี่ (ไม่ต้องกังวลฉันจะเปิดแหล่งข้อมูลเทคนิคของฉัน) และนั่นเป็นสาเหตุที่สิ่งต่าง ๆ ไม่ได้ผลสำหรับฉัน
ฉันได้ลองเขียนโปรแกรมแอปเปิ้ลชนิดต่าง ๆ แต่บางทีฉันอาจต้องการแอปเปิ้ลไซเบอร์? ฉันไม่ทราบว่าจะได้รับหนึ่งในนั้นอาจจะอยู่ในสถานที่เช่นนี้: http://cyberapples.com/เว็บไซต์ที่อยู่ในขณะนี้ - มันเคยพูดคุยเกี่ยวกับถังขยะ cgi หรือบางสิ่งบางอย่าง มีคำแนะนำเกี่ยวกับเรื่องนี้ด้วยหรือไม่?
นี่เป็นส่วนหนึ่งของรหัสของฉันที่เกี่ยวข้องกับแอปเปิ้ลจำลองเนื้อหาเกม:
///... /* 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!();
อย่างที่คุณเห็นฉันมีแนวคิดพื้นฐานล้มเหลวและฉันอธิบายชื่อตัวแปรและแอตทริบิวต์ของวัตถุได้อย่างชัดเจน ฉันตั้งค่าโลกอย่างชัดเจนและชัดเจนแม้ว่าฉันจะทำให้โลกง่ายขึ้นในเกมเมื่อเทียบกับห้องครัวจริง
ฉันคิดว่าปัญหามีผลผูกพันpaper_2d_behaving_apple
กับactual_existing_apple_on_myCounter
แอปเปิ้ลแล้วถ่ายโอนไปยังแอปเปิ้ลในอากาศ ( apple_now_inAir
);
ไม่ว่ากรณีจะเป็นเช่นไรและไม่ว่าฉันจะจัดรูปแบบทุกอย่างดีแค่ไหนก็ไม่มีอะไรเกิดขึ้น ด้านล่างนี้เป็นภาพที่ฉันเรียกใช้โปรแกรม:
มีใครเคยเจอเรื่องนี้มาก่อนไหม? ขอบคุณล่วงหน้า. ฉันเพิ่งเริ่มต้นกับเกมการเขียนโปรแกรมเมื่อเร็ว ๆ นี้เปลี่ยนอาชีพดังนั้นอย่ารู้สึกแย่
ขอบคุณ Bob
apple_now_inAir.Drop!();
- เป็นจลาจล มีบางอย่างเกี่ยวกับโพสต์นี้ - ทะเยอทะยาน, สับสน, ถึงวาระ ...