มี“ Hello World” ง่ายๆสำหรับการสร้างเกมหรือไม่?


17

ไม่มีใครรู้เรื่อง "Hello World" ง่ายๆสำหรับการสร้างเกมสำหรับ Ubuntu หรือไม่? ฉันเห็นวิดีโอเริ่มต้นใช้งานอย่างรวดเร็ว

ตัวอย่างใด ๆ สำหรับ platformers หรืออะไรแบบนั้น

แก้ไข: เพียงแค่สรุปคำตอบ

Blender Game engine - ใช้ python

Pygame - Python

MonoGame http://monogame.codeplex.com/ - XNA บางประเภท?

QuakeC - นี่คือ Quake ปรุงรส C เช่น lang ดู: Steel Storm http://one.steel-storm.com/


7
ดู: developer.ubuntu.com/community "เข้าร่วมใน AskUbuntu› ไซต์คำถามและคำตอบที่แก้ไขร่วมกันสำหรับผู้ใช้ Ubuntu และนักพัฒนาฟรี 100% ไม่ต้องลงทะเบียนถามคำถามตอนนี้›" ฉันคิดว่า askubuntu น่าจะเป็นของนักพัฒนา เช่นกัน
am

2
โดยส่วนตัวฉันรู้สึกว่ามันดีเพราะใน developer.uc มันถูกกล่าวถึงใน AU ถ้า OP สามารถหาข้อมูลเพิ่มเติมได้เล็กน้อยเกี่ยวกับสิ่งที่พวกเขากำลังมองหานั่นก็จะดีที่สุด
jrg

คำตอบ:


8

Blender สามารถสร้างเกม 3 มิติด้วย Python: http://www.blender.org/features-gallery/features/

มันเป็นไปได้ที่จะทำให้เกม Hello World ง่าย ๆ ที่นั่นมันรวมเข้ากับเสียง, การจำลองทางฟิสิกส์, GLSL, ปลั๊กอินสำหรับสิ่งต่าง ๆ มากมาย (รวมถึงระบบเครือข่ายและเว็บปลั๊กอิน), ขั้นตอนการทำงานที่ดีและเป็นมืออาชีพ

แพลตฟอร์ม 3 มิติ: http://www.youtube.com/watch?v=BGqyvX4P6Pg

การสาธิตคุณสมบัติ: http://www.youtube.com/watch?v=SjFGDcGcEjE

Panda3D มันเจ๋ง แต่ไม่ใช่ Game Engine มันเป็นกลุ่มของ Python Library ที่คุณสามารถรวบรวม Game Engine ได้ แต่มันไม่ได้ผสานรวมอย่างสมบูรณ์และไร้รอยต่อ

Ogre3D มันเหมือนกันมันไม่ใช่ Game Engine มันเป็นเอ็นจิ้น 3D Graphics ที่คุณสามารถประกอบ Game Engine ได้คุณต้องเขียนรหัสเสียงของคุณเอง


ฉันคิดว่า Ogre3D และ Panda3D ควรเป็นเอ็นจิ้นกราฟิก 3 มิติเท่านั้นและควรใช้กับ SFML หรือ SDL เพื่อขยายจาก 2d เป็น 3d และด้วย Bullet หรือ PhysX เพื่อรวมฟิสิกส์เข้าด้วยกัน มันง่ายที่จะทำเมื่อคุณคุ้นเคยกับสิ่งต่างๆ
cprn

10

หนึ่งตัวเลือกที่ง่ายและรวดเร็วเป็นอย่างรวดเร็ว

การสร้างโครงการทำได้ง่ายเหมือนพิมพ์ที่ terminal:

quickly create ubuntu-application my-new-project

ดูวิดีโอแนะนำนี้

นอกจากนี้ยังเป็นเว็บไซต์ที่ยอดเยี่ยม: http://developer.ubuntu.com/get-started/

และแน่นอนคู่มือ: man quickly

คุณจะใช้หลามซึ่งยังเป็นที่ที่ดีสำหรับเกม 3D ดูPanda3D


1
ใช่ฉันจะเริ่มต้นด้วยอันนั้น
Luis Alvarado

@desgua ฉันเห็นวิดีโอนั้นแล้ว คุณมีประสบการณ์ในการใช้ Quickly เป็นจุดเริ่มต้นสำหรับเกม dev หรือไม่
am

(?) อิ่มความคิดได้อย่างรวดเร็ว + pygame ทำงานได้ดีสำหรับเหมือนจุดและคลิกเกมประเภทอาจจะไม่มากที่จะทำให้ platformers ...
am

ฉันไม่สามารถเห็นด้วยกับคุณ มีคนพยายามใช้รหัสหลามสำหรับเกม Android (เพื่อเป็นตัวอย่างพลังของงูหลาม) ดูสิ่งนี้: kivy.org/#home
desgua

Pygame นั้นค่อนข้างดีpygame.org/news.htmlและถ้ามันเป็นการสร้างเกมที่ยอดเยี่ยมอย่างรวดเร็ว Flash ยังคงไม่สามารถเอาชนะได้
David Pitkin

6

เช่นเดียวกับระบบปฏิบัติการใด ๆ ที่คุณจะต้องเลือกภาษาการเขียนโปรแกรมที่สามารถใช้ OpenGL สำหรับกราฟิก จากนั้นพัฒนาเกม

เนื่องจากแอพพลิเคชั่นจำนวนมากบน Ubuntu เป็นโอเพ่นซอร์สคุณสามารถหาแอพพลิเคชั่นในศูนย์ซอฟต์แวร์ที่ให้บริการฟรีและใช้คำสั่งต่อไปนี้: sudo apt-get source gameName ที่จะทำให้คุณมีความคิดว่า นอกจากนี้คุณยังสามารถศึกษาวิธีการแพคเกจแพคเกจเดเบียนเมื่อคุณคิดว่าคุณพร้อมที่จะกระจาย


ทำไมต้องเป็น OpenGL มีไลบรารี / ภาษาทางเลือกมากมายที่สามารถสร้างเกมได้
Pubby

1
@Pubby คุณสามารถตั้งชื่อได้ไหม?
am

4

คุณได้ลอง PyGame แล้วหรือยัง? มันเป็นห้องสมุดที่ยอดเยี่ยมสำหรับการทำเกม มีเกมมากมายที่ทำให้คุณสามารถอ่านรหัสและเรียนรู้สิ่งหนึ่งหรือสอง ฉันอุทิศเวลาว่างในการเรียนรู้เพื่อสร้างเกมแพลตฟอร์มเพื่อการเรียนรู้ ฉันจะโพสต์การเรียนรู้ของฉันและตอบกลับในภายหลังด้วยงานจริงบางอย่าง

กรุณาตรวจสอบhttp://www.pygame.org/wiki/tutorials

หวังว่านี่จะช่วยได้


ฉันเคยเห็น + ใช้ pygame บ้างแล้ว คุณรู้จักเกมจริง ๆ ที่เขียนไว้หรือไม่? จริง = เกมทั้งหมด (ไม่ได้เป็นเพียงการสาธิต) กับกราฟิกที่ดีบางและการเล่นเกม
am

3

Panda3D เป็นห้องสมุดเกมข้ามแพลตฟอร์มที่ดีสำหรับ Python และ C ++ มันได้รับการพัฒนาและดูแลโดยกลุ่มที่ Carnegie Mellon และมันถูกใช้ในชื่อเชิงพาณิชย์ไม่กี่ มันเพิ่ม abstractions ที่เรียบง่ายกว่า OpenGL, OpenAL และ Bullet และมีตัวอย่างมากมายในการเริ่มต้นใช้งานรวมถึงเกมดาวเคราะห์น้อย 2 มิติ

http://www.panda3d.org/

http://www.panda3d.org/manual/index.php/Sample_Programs_in_the_Distribution



1

เอ็นจิ้นเกมบางตัวที่ทำงานกับอูบุนตูนั้นเป็น Panda3D และ love2d ทั้งสองเรียนรู้ได้ง่ายและมีเอกสารและชุมชนที่ดี


1

น่าเสียดายที่ไม่มี Hello World ง่าย ๆ สำหรับเกม Hello World ive ที่เล็กที่สุดเท่าที่เคยมีมาสามารถสร้างเกมโดยใช้รหัสเพียงไม่เร็วหรือ pygame คือรหัส C ประมาณ 50 บรรทัดที่วางตำแหน่ง opengl และส่วนหัว C ต่างๆตั้งค่าบางอย่างของ opengl และเปิดหน้าต่างพร้อม hello โลกพิมพ์

การเขียนโปรแกรมเกมแม้แต่บน Linux นั้นไม่ง่ายอย่างที่คนส่วนใหญ่คิด

ถ้าคุณต้องการบางสิ่งที่ง่ายกว่า Blender 2.6 มีเครื่องมือสร้างเกมในตัวมันใช้ Python และใช้งานง่าย แต่มีความยืดหยุ่นน้อยกว่า C + OpenGL ในความคิดของฉัน

แหล่งข้อมูลบางอย่าง: nehe.gamedev.net Google;) มีอีกหลายที่ลอยอยู่รอบ ๆ ฉันไม่สามารถจำชื่อของพวกเขาได้ขอโทษ: |



0

นี่คือ 50 บรรทัด Tic-Tac-Toe:

import java.awt.*;  
import java.awt.event.*;
import javax.swing.*;

public class TicTacToe extends JFrame implements ActionListener {
    private JButton [] button  = new JButton [9];
    private int count = 0;

    public TicTacToe () {           
        super ("Tic-Tac-Toe");
        setSize (300, 300);
        setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
        setLayout (new GridLayout (3, 3));
        init ();
    }

    private void init () {           
        count = 0;
        for (int i = 0; i < 9; ++i) {
            button [i] = new JButton ("");
            button [i].addActionListener (this);
            add (button [i]);
        }
        setVisible (true);
    }

    public void actionPerformed (ActionEvent a) {    
        String letter = (++count % 2 == 1) ? "X" : "O";
        for (JButton jb : button) 
        if (a.getSource () == jb) {
            jb.setText (letter);
            jb.setEnabled (false);
        }
        if (count == 9) {
            for (JButton jb : button) 
                remove (jb) ;
            init ();
        }
    }

    public static void main (String [] args) {           
        new TicTacToe ();
    }
}

เนื่องจากเป็น Java จึงไม่ผูกพันกับ Ubuntu ไม่ใช่แม้แต่ Linux แต่จะทำงานบน Solaris, Apple และ Windows เช่นกัน - ที่เป็น JVM

แต่นั่นจะคล้ายกับโซลูชันใน Smalltalk, Python, Ruby, ... - แม้ใน C หรือ C ++ เมื่อใช้เฟรมเวิร์กแบบพกพาเช่น Qt หรือ Gnome และไม่ใช่คลาส MFC ที่เป็นกรรมสิทธิ์ ใน C และ C ++ แน่นอนคุณต้องคอมไพล์เนื้อหาใหม่


0

ความเรียบง่ายของการทำเกมขึ้นอยู่กับภาษาการเขียนโปรแกรม / สภาพแวดล้อมที่คุณเลือก สำหรับโปรแกรมเมอร์ขั้นสูงการเขียนโค้ดเกมของคุณโดยตรงในภาษาการเขียนโปรแกรมที่เลือก (C / C ++ / Python / Java / ฯลฯ ) อาจเป็นวิธีที่ดีที่สุด

สำหรับมือสมัครเล่น / ไม่ใช่ผู้ใช้ที่ชอบอินเตอร์เฟซการลากและวางที่เรียบง่ายในการสร้างเกมฉันขอแนะนำ 'Stencyl' ( http://www.stencyl.com/ )

เว็บไซต์ช่วยเหลือ 'Stencyl' มีแหล่งข้อมูลทั้งหมดเพื่อให้คุณเริ่มต้นด้วยการสร้างเกม คุณสามารถไปที่หน้าช่วยเหลือ 'Crash Course 2' โดยตรงเพื่อสร้างเกมแรกของคุณทั้งหมดตั้งแต่เริ่มต้นใน 'Stencyl' ( http://www.stencyl.com/help/view/crash-course-invaders-1/ ) . 'Crash Course' ได้รับใน 'ส่วน' และง่ายต่อการติดตาม


-1
//A Hello World for game
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
    int a=5, answer;
    printf("I am guess number game\n\n"); getchar(); 
    printf("I have a number\n\n"); getchar();
    printf("...between 1 until 10...\n\n"); getchar();
    printf("Try to guess: \n\n"); scanf("%d", &answer);
    while(1){
    if(answer<a){printf("\nYours %d, too small...\n\nInput again: ", answer); scanf("%d", &answer);}
    if(answer>a){printf("\nYours %d, too big...\n\nInput again: ", answer); scanf("%d", &answer);}
    if(answer==a){printf("\nYou're Right! My number is %d!\n\nDa daaag...", a); break;}
             }
return 0;   
}

1
เล่นซ้ำได้ไม่มาก... ;-)
Eliah Kagan
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.