3D ডেটা ফরম্যাটের জন্য ওপেন সোর্স C++ লাইব্রেরি
C++ API যা বিভিন্ন 3D ডেটা ফরম্যাট থেকে জ্যামিতিক দৃশ্য লোড করার পাশাপাশি প্রক্রিয়াকরণের জন্য সমর্থন প্রদান করে। আপনি এটিকে গেম ইঞ্জিনের সাথে সংহত করতে পারেন এবং অন্যান্য প্রোগ্রামিং ভাষার সাথে বাঁধাই করতে পারেন।
Asset-Importer-Lib (Assimp) হল একটি শক্তিশালী ওপেন সোর্স লাইব্রেরি যা C++ এ প্রয়োগ করা হয়। এটি সফ্টওয়্যার বিকাশকারীদের তাদের নিজস্ব C++ অ্যাপ্লিকেশনের মধ্যে বিভিন্ন 3d-ডেটা-ফরম্যাট থেকে জ্যামিতিক দৃশ্যগুলি লোড করার পাশাপাশি প্রক্রিয়া করার ক্ষমতা দেয়। লাইব্রেরিটি প্ল্যাটফর্ম-স্বাধীন এবং গেম ইঞ্জিনগুলির সাথে সহজে একীকরণ এবং অন্যান্য প্রোগ্রামিং ভাষার সাথে আবদ্ধ করে।
বিশ্বজুড়ে বেশ কয়েকটি 3D ফাইল ফরম্যাট রয়েছে এবং Assimp লাইব্রেরি তাদের মধ্যে বেশ কয়েকটি গুরুত্বপূর্ণ ফাইলের জন্য সমর্থন অন্তর্ভুক্ত করেছে। লাইব্রেরিটি খুব সুসংগঠিত এবং 40+ 3D-ফাইল-ফরম্যাট যেমন Collada, 3D Studio Max 3DS এবং ASE, Biovision BVH, স্ট্যানফোর্ড পলিগন লাইব্রেরি, AutoCAD DXF, নিউট্রাল ফাইল ফরম্যাট, Autodesk DXF, অবজেক্ট ফাইল ফরম্যাট, মিল্কশেপ এর জন্য সমর্থন প্রদান করে। 3D, লাইটওয়েভ সিন এবং আরও অনেক কিছু।
লাইব্রেরিটি বিভিন্ন উত্স থেকে উপাদানগুলি একবার আমদানি করার জন্য এবং সহজে এবং দ্রুত অ্যাক্সেসের জন্য একটি ইঞ্জিন-নির্দিষ্ট বিন্যাসে সংরক্ষণ করার জন্য খুবই উপযোগী৷ সর্বশেষ সংস্করণে অন্যান্য সমর্থিত ফাইল ফরম্যাটে 3D ফাইল রপ্তানির জন্য সমর্থন অন্তর্ভুক্ত করা হয়েছে। লাইব্রেরিটি বর্ধিত ভার্টেক্স ক্যাশে লোকেলিটি, ত্রিভুজ নির্বিচারে বহুভুজ অনুসন্ধান, জিপিইউ সীমাবদ্ধতা কাটিয়ে ওঠার জন্য বড় মেশগুলিকে বিভক্ত করা, মেশগুলিকে অপ্টিমাইজ করা, কম ড্র কলের জন্য আউটপুট কাঠামো এবং নোডগুলিকে যাচাই করে সর্বাধিক ডেটা অখণ্ডতা নিশ্চিত করার মতো বৈশিষ্ট্যগুলিকে সমর্থন করে।
Assimp দিয়ে শুরু করা
Assimp লাইব্রেরি ইনস্টল করার সবচেয়ে সহজ উপায় হল cmake এর মাধ্যমে। প্রথমে আপনাকে cmake ইন্সটল করতে হবে। একটি মসৃণ ইনস্টলেশনের জন্য নিম্নলিখিত কমান্ড ব্যবহার করুন. লাইব্রেরি তৈরি করতে শুধুমাত্র একটি কমান্ড-প্রম্পট খুলুন, রেপো-ফোল্ডারে নেভিগেট করুন এবং cmake চালান।
Cmake এর মাধ্যমে Assimp ইনস্টল করুন
cmake CMakeLists.txt
C++ লাইব্রেরির মাধ্যমে 3D মডেল লোড ও প্রসেস করুন
ওপেন অ্যাসেট ইমপোর্ট লাইব্রেরি (অ্যাসিম্প) C++ অ্যাপ্লিকেশনের মধ্যে কিছু সাধারণ 3D মডেল ফরম্যাট থেকে 3D মডেল অ্যাক্সেস এবং লোড করার জন্য সমর্থন অন্তর্ভুক্ত করেছে। আপনাকে 3D মডেল ফাইলের পথ প্রদান করতে হবে এবং এটি মডেল লোড করা শুরু করবে। আপনি সহজেই উদাহরণ তৈরি করতে পারেন এবং এর ভিতরে মডেল সম্পর্কে সমস্ত তথ্য সঞ্চয় করতে পারেন। লাইব্রেরি এমনভাবে মডেলটি লোড করবে এবং পড়বে যাতে মেশের আগে উপকরণ লোড করতে হবে এবং মেশগুলি নোডের আগে থাকতে হবে।
C++ এর মাধ্যমে CAD মডেলগুলিকে রূপান্তর করুন
ওপেন সোর্স লাইব্রেরি অ্যাসিম্প সফ্টওয়্যার বিকাশকারীদের C++ অ্যাপ্লিকেশন ব্যবহার করে অন্যান্য সমর্থিত 3D মডেলগুলিতে CAD মডেল লোড এবং রূপান্তর করার ক্ষমতা দেয়। আপনাকে CAD ফাইলের ঠিকানা প্রদান করতে হবে এবং একবার লোড হয়ে গেলে আপনি সহজেই এটিকে অন্যান্য সমর্থিত ফর্ম্যাটে রূপান্তর করতে পারেন যেমন DAE, STL, OBJ, PLY, STEP, 3MF, FBX এবং আরও অনেক কিছু।
মডেলগুলিতে অ্যানিমেশন আমদানি এবং প্রয়োগ করুন
ওপেন অ্যাসেট ইমপোর্ট লাইব্রেরি (অ্যাসিম্প) সফ্টওয়্যার প্রোগ্রামারদের সি++ কোড ব্যবহার করে মডেলগুলিতে অ্যানিমেশন প্রয়োগ করার ক্ষমতা দেয়। সর্বোত্তম পন্থা হবে প্রথমে দৃশ্য গ্রাফে নোডগুলিকে অ্যানিমেট করা তারপর আপনি দৃশ্য গ্রাফের বর্তমান অবস্থা থেকে হাড়ের ম্যাট্রিক্সগুলি গণনা করতে পারেন৷