সি ++ গেম প্রকল্পের জন্য আপনি কোন স্ক্রিপ্টিং ভাষার প্রস্তাব করবেন? [বন্ধ]


14

এখানে স্ক্রিপ্ট করে আমি বোঝাতে চাইছি কোনও স্ক্রিপ্টে কনফিগার ডেটা রাখছি না, তবে প্রকল্পের কিছু অংশ যেমন স্ক্রিপ্টিং কিছু শ্রেণির পদ্ধতি, নির্দিষ্ট গেম লুপ পরীক্ষা করা ইত্যাদি এটি কেবল উন্নয়নকে ত্বরান্বিত করার জন্য নয়, খেলোয়াড়গুলিকে এর কিছু দেখার অনুমতি দেয় স্ক্রিপ্টগুলি খেলার কিছু দিকগুলিকে টুইঙ্ক করতে।

লুয়ার মতো কিছু ভাষার লুয়াবিন্ডের মতো কিছু মোড়ক থাকে তবে আমি অতীতে এটি ব্যবহার করার পরে সমস্যা ছিল কারণ এটি উত্তরাধিকারের প্রসঙ্গে পদ্ধতি পুনর্নির্ধারণকে সমর্থন করে না।

আপনার ভাষা / র‌্যাপারগুলি কীভাবে ব্যবহার করবেন বা ব্যবহার করবেন না সে সম্পর্কে আপনার পরামর্শ কী?

উত্তর:


9

লুয়া স্ক্রিপ্টযুক্ত ভিডিও গেমস
লুয়া স্ক্রিপ্টযোগ্য গেম ইঞ্জিন

আমার মনে হয় লুয়া সেরা শট।

এই নিবন্ধটি লুয়া এবং সি ++ একীকরণ সম্পর্কে। এটা বলে:

লুয়াবাইন্ড দুর্দান্ত পণ্য তবে আমার কাছে এটি অত্যন্ত জটিল দেখাচ্ছে। একটির জন্য কোডটি ক্লাস এবং অবজেক্টগুলি কোথায় তা অনুসরণ করা সহজ নয়। এছাড়াও যে আমি লুয়াকে একটি ডাব্লুউইজেডস অ্যাপ্লিকেশনটিতে সংহত করতে চেয়েছি তা দেখে টেমপ্লেটগুলি ব্যবহার করা কিছুটা হ'ল (আপনি ডাব্লুএক্সউজেটস সাইটে ক্রস-প্ল্যাটফর্মের সমস্যাগুলি পড়তে পারেন)।

অন্যান্য অনেকগুলি বাধ্যতামূলক গ্রন্থাগার রয়েছে:

http://luabridge.sourceforge.net/
http://www.stackedboxes.org/~lmb/diluculum/
http://cpplua.sourceforge.net/
http://www.tecgraf.puc-rio.br/~ celes / tolua /

সেরা সি ++ / লুয়া র‍্যাপারটি কী?

শুধু নির্বাচন করুন এবং উপভোগ করুন।


হ্যাঁ, লুয়া সি এর সাথে একীভূত করা বেশ সহজ এবং খুব সহজ, বাস্তবে, এম্বেড হওয়া ভাষা হওয়ায় এটি লুয়ার মূল লক্ষ্য।
মার্কো মোস্তাপিক

লুয়াবাইন্ড সম্পর্কিত রেফারেন্সের জন্য ধন্যবাদ, অন্য বাধ্যতামূলক গ্রন্থাগারগুলিতে খনন করা আমাকে আবার লুয়া নেওয়ার জন্য রাজি করবে
ফ্রেডেরিক ইম্বিয়াউল্ট

আমি তবে কেবল আপনার মূল স্ক্রিপ্টগুলি মূল থ্রেডে চালিত করার পরামর্শ দিচ্ছি এবং যদি পারফরম্যান্স উদ্বেগজনক হয় তবে এর জন্য একটি পুল বরাদ্দ সরবরাহ করে।
কাইলোটন

5

আমি চ্যাসস্ক্রিপ্ট পছন্দ করছি ; আমি এটি খুব দীর্ঘকাল ধরে ব্যবহার করি না তবে এটি এখনও পর্যন্ত বেশ শক্ত মনে হচ্ছে।

পাইথন বা লুয়ার থেকে পৃথক, এটি সি ++ এর সাথে ব্যবহারের জন্য স্থল থেকে তৈরি। বাঁধাইয়ের প্রক্রিয়াটি লুয়াবিন্দ / ইত্যাদির চেয়ে অনেক বেশি পরিচ্ছন্ন বলে মনে হয়।

এখানে ওয়েবসাইটের সংক্ষিপ্তসার:

চইস্ক্রিপ্ট প্রথম এবং একমাত্র স্ক্রিপ্টিং ভাষা যা সি ++> সামঞ্জস্যের বিষয়টি মাথায় রেখে গ্রাউন্ড থেকে তৈরি করা হয়েছে। এটি একটি ECMAScript- অনুপ্রাণিত, এম্বেড করা কার্যকরী-জাতীয় ভাষা।

ছাইস্ক্রিপ্ট বিএসডি লাইসেন্সের আওতায় লাইসেন্সপ্রাপ্ত।


মজাদার. পারফরম্যান্স টেস্ট সম্পর্কে কী? চেইস্ক্রিপ্ট / লুয়া / পাইথনের তুলনা কি আছে?
শীর্ষস্থানীয়

বেশ আকর্ষণীয়, আপনি এতদূর যেতে পেরেছেন এমন কোনও অসুবিধা / বাগ / পারফরম্যান্স ইস্যু কি নেই?
ফ্রেডেরিক ইম্বিয়াউল্ট

আমি কোনও মানদণ্ড দেখিনি, তবে এখনও আমার কোনও পারফরম্যান্সের সমস্যা হয়নি ... আমার এখন পর্যন্ত মূল মুখ্য বিষয় হ'ল এটি সংখ্যার প্রকারের মধ্যে স্পষ্টভাবে রূপান্তর না করে (তাই আপনি যদি কোনও সংকেত পাস করেন তবে আপনি একটি ত্রুটি পাবেন) একটি ভাসা গ্রহণ ইত্যাদি একটি ফাংশন)।
রিলে অ্যাডামস

1
কেবলমাত্র একটি এফওয়াইআই, যেহেতু এই মন্তব্যটি এখন 6 বছরের পুরানো - ছাইস্ক্রিপ্ট এখন অন্তর্ভুক্ত সংখ্যাসূচক রূপান্তরগুলি করে।
বামটি

5

আমি লুয়া সুপারিশ করব ।
পাইথন খুব জনপ্রিয়। অনেক বৈশিষ্ট্যযুক্ত গেম ইঞ্জিন (উদাহরণস্বরূপ, ব্লেন্ডার) এটি ব্যবহার করে।
সি ++ :: বুস্টের পাইথনের সাথে কাজ করার জন্য একটি গ্রন্থাগার রয়েছে ।
আমি কাঠবিড়ালি সম্পর্কে পড়েছি , কিন্তু এটি ব্যবহার করিনি।

আপনি এই গেম ইঞ্জিন ওভারভিউটি পড়তে পারেন । একটি Scriptingকলাম আছে। আপনি দেখতে পারেন যে লুয়া এবং পাইথন সর্বাধিক জনপ্রিয় স্ক্রিপ্টিং ভাষা।


বুস্ট সম্পর্কে, আমি মনে করি এটি সম্ভবত একটি বিশাল গ্রন্থাগার এবং অনেকগুলি সমস্ত প্রকল্পে বেশ কার্যকর নয়। আসলে লুবাইন্ড বুস্টকে প্রচুর ব্যবহার করে এবং এটি আমার পছন্দ না এমন একটি বিষয় of
ফ্রেডরিক আইম্বিয়েল্ট

1
আমি বলতে চাই এটি একটি সুবিধা। আপনার অনেকগুলি সমাধান বাক্সের বাইরে রয়েছে। এবং আপনার প্রকল্পের কেবলমাত্র 1 বাহ্যিক নির্ভরতা রয়েছে - বুস্ট। অনেকগুলি ছোট ছোট লাইব্রেরি নয় (এতে বিভিন্ন স্টাইল, পন্থা, লাইসেন্স ব্যবহার করা হয় এবং পরিবর্তে বাহ্যিক অন্তর্নিহিত নির্ভরতা থাকতে পারে) যা আপনার কোডের সাথে আপডেট করতে, সিঙ্ক করতে এবং বজায় রাখা শক্ত are
শীর্ষস্থানীয়

1
এবং আপনার কেবলমাত্র সেই বুস্ট লাইব্রেরি (শিরোনাম) অন্তর্ভুক্ত করুন যা আপনার প্রয়োজন। বুস্টটি বিশাল, তবে আপনার প্রয়োজন হয় না যতক্ষণ না আপনার এই বা তার প্রয়োজন হয়।
শীর্ষস্থানীয়

এবং অজগর এবং লুয়া সম্পর্কে, সি ++ এর জন্য এমন কিছু মোড়ক রয়েছে যা আপনাকে শ্রেণি পদ্ধতি পুনরায় সংজ্ঞায়িত করতে, নতুন পদ্ধতি তৈরি করার অনুমতি দেয় ইত্যাদি? এবং এই বৈশিষ্ট্যটি কি সি ++ কোড (সুরক্ষার জন্য) থেকে নিয়ন্ত্রণ করা যায়? যেমনটি আমি বলেছি, লুয়াবাইন্ড এই জিনিসগুলি করে তবে উত্তরাধিকারের প্রসঙ্গে ব্যর্থ হয় যা গেম প্রকল্পে বেশ সাধারণ। পদ্ধতি আমি পুনরায় সংজ্ঞায়িত করতে উদাহরণ স্বরূপ হয় চাই, পরীক্ষা নির্দিষ্ট খেলা লুপ, প্লেয়ারের মত সত্ত্বা আপডেট পদ্ধতি, খেলা নিজেই বিশ্ব, ইত্যাদি আপডেট পদ্ধতি
ফ্রেডেরিক Imbeault

লুয়ার ক্লাস এবং অবজেক্ট নেই তবে সেগুলি টেবিলগুলি দ্বারা অনুকরণ করা যায়। এখানে গলি জন্য একটি অ্যাপ্লিকেশন Lua গ্রন্থাগার যে আমি পছন্দ হল: love2d.org/wiki/MiddleClass
শীর্ষস্থানীয়

4

কেন নিজের তৈরি করবেন না?

যদি আপনার কাছে সময়, ধৈর্য এবং শেখার আগ্রহ থাকে - আপনি সবসময় আপনার নিজের প্রয়োজন মতো সমস্ত বৈশিষ্ট্য এবং বাক্য গঠন সহ আপনার নিজস্ব স্ক্রিপ্টিং ইঞ্জিন বিকাশের চেষ্টা করতে পারেন।

সুবিধাদি

  1. আপনি কম্পিউটার বিজ্ঞানের একটি আকর্ষণীয় অংশ সম্পর্কে শিখবেন'll
  2. একটি 'ইন-হাউস' স্ক্রিপ্টিং ইঞ্জিনটি বিকাশ করে, আপনাকে ইঞ্জিনটি ঠিক কীভাবে প্রয়োজন তা ঠিকঠাক করে দিয়ে আপনাকে শেষ থেকে শেষ করতে সম্পূর্ণ নিয়ন্ত্রণ দেয়।
  3. যদি আপনাকে রাস্তায় নেমে পরে কোনও পরিবর্তন করতে হয়, তবে তারা আপনার নিজস্ব কোডবেসটি ইন ও আউট সম্পর্কে কারও কাছে এলেস শিখার চেয়ে কিছুটা সহজ করতে পারে।
  4. আপনার ইঞ্জিনকে অন্য কারও প্যাচগুলির সাথে আপডেট রাখার বিষয়ে আপনাকে চিন্তা করতে হবে না।

অসুবিধেও

  1. সময়। অনেক লোকের কাছে তা নেই। এখনই আপনার যদি কিছু প্রয়োজন হয় তবে ইতিমধ্যে বিদ্যমান ইঞ্জিনটি চেষ্টা করুন (ইতিমধ্যে প্রস্তাবিতদের মধ্যে একটির মতো)।

  2. গতি. প্রচুর বিদ্যমান স্ক্রিপ্টিং ইঞ্জিনগুলি খুব দ্রুত - একটি কাস্টম সমাধান তত দ্রুত নাও হতে পারে।

  3. দলের আকার. প্রচুর বিদ্যমান স্ক্রিপ্টিং ইঞ্জিনগুলিতে কোডবেসে কাজ করার জন্য বৃহত্তর দল রয়েছে, সেগুলি ব্যক্তিগত দল বা গ্লোবাল স্বেচ্ছাসেবীরাই হোক না কেন, কোডের জন্য এমন কিছু কথা বলা যেতে পারে যা অন্য অনেক লোক পরীক্ষা করে দেখে থাকে re

  4. একটি স্ক্রিপ্টিং ইঞ্জিন কার্যকরভাবে এড়াতে একটি নির্দিষ্ট পরিমাণ প্রাথমিক পরিকল্পনা প্রয়োজন। এখানে অনেকগুলি ভিত্তি রয়েছে যা বাস্তবায়িত হওয়া দরকার যা প্রকৃত স্ক্রিপ্টিং ইঞ্জিনের সাথে মোটেই নাও থাকতে পারে।

  5. আপনার প্লেয়ারবেস / বিকাশকারীদের আপনার স্ক্রিপ্টিং ইঞ্জিনে অভ্যস্ত আসতে হবে। সিনট্যাক্স এবং কার্যকারিতা প্রায় আধুনিক স্ক্রিপ্টিং ইঞ্জিনগুলির মতো প্রায় একই সমস্যা হলে এটি কোনও সমস্যা হতে পারে না তবে কেবল এটি সম্পর্কে সচেতন হন।

এটি কোনওভাবেই একটি বিস্তৃত তালিকা নয়। আপনি যদি নিজের পছন্দসই কার্যকারিতাটি পেতে নিজেকে বিদ্যমান স্ক্রিপ্টিং ভাষার পিছনের দিকে বড় পরিমাণে পরিবর্তন করতে দেখেন তবে আইএমও আপনার সম্ভবত আরও একটি ইঞ্জিন সন্ধান করা উচিত যা আপনার প্রয়োজনীয়তা আরও নিবিড়ভাবে ফিট করে বা কেবল নিজের তৈরি করতে পারে।

আমি বুঝতে পেরেছি যে লোকেরা "অলসতা" এবং "চাকাটি পুনরায় উদ্ভাবন করবেন না" এর আশেপাশে ছোঁড়াছুড়ি উপভোগ করে তবে আমি মনে করি যে এই জিনিসগুলি কীভাবে করা হয় তা শেখার বিষয়ে কিছু বলা উচিত। এবং একটি নির্দিষ্ট বাস্তবায়ন সম্ভবত আপনার প্রকল্পের জন্য জেনেরিক প্রয়োগের চেয়ে ভাল হতে চলেছে।

"সি ++ তে স্ক্রিপ্টিং সিস্টেম তৈরি করা" মনে হচ্ছে বিষয়গুলি আলোচনা করার সময় লোকেদের পছন্দসই নিবন্ধ (গুলি) ভাগ করা: http://www.gamedev.net/references/list.asp?categoryid=76


2
আমি সম্মত হলাম এটির একটি বিশেষ শিক্ষাগত সুবিধা রয়েছে। তবুও এর জন্য প্রোগ্রামিং ভাষা তত্ত্বের কিছু জ্ঞান এবং দক্ষতা প্রয়োজন (যা তাদের অনেক লোক মনে করেন) এবং কম্পিউটিং তত্ত্বের কিছু জ্ঞান প্রয়োজন। যদি এই উত্তরগুলি কারও কাছে আবেদন করে, তবে আমি এই দুটি বইয়ের পরামর্শ দিচ্ছি: amazon.com/gp/product/0136073476/ref=oss_product এবং amazon.com/gp/product/0534950973/ref=oss_pr
Prodct

তবে আপনি অবাক হবেন যে আপনি এই বিষয়গুলির প্রকৃত জ্ঞান না রেখে কতদূর যেতে পারেন। প্রচুর এমইউডির একটি স্ক্রিপ্টিং ভাষা রয়েছে যা শর্তসাপূর্ণ সক্ষম করতে কিছু হ্যাকের সাথে বিবৃতিগুলির তালিকার তুলনায় কিছুটা বেশি এবং তবুও তারা একা এটি দিয়ে অনেক কিছু অর্জন করতে পারে।
কাইলোটন

ওখানে এসেছি। পার্সিং, সংকলক ডিজাইন, বাইটকোড মেশিনগুলি that সমস্ত স্টাফ সম্পর্কে অনেক কিছু শিখেছে । পরবর্তী সময় আমি সম্ভবত লুয়া ব্যবহার করব এবং আরও অনেক প্রশংসা করব। :)
কাজ ড্রাগন 11

2

আমি লুয়া, পাইথন, স্কিম এবং কাঠবিড়ালি চেষ্টা করেছি। লুয়া সেরা কাজ করেছেন; এটির কাঠামোর চেয়ে বৃহত্তর সম্প্রদায় এবং আরও ভাল সমর্থন রয়েছে এবং পাইথনের চেয়ে মেমরি এবং পারফরম্যান্সের আরও ভাল বৈশিষ্ট্য রয়েছে। স্কিমটি সত্যিই খুব ভালভাবে কাজ করেছে, এবং এর একটি সত্যই ক্ষুদ্র দোভাষী রয়েছে, তবে ডিজাইনারদের পক্ষে কার্যকরী ভাষার চারপাশে মাথা জড়িয়ে রাখা কঠিন ছিল।


আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.