کتابخانه C++ منبع باز برای قالبهای داده سه بعدی
C++ API که از بارگیری و همچنین پردازش صحنههای هندسی از فرمتهای داده سه بعدی مختلف پشتیبانی میکند. شما می توانید آن را با موتورهای بازی ادغام کنید و به سایر زبان های برنامه نویسی متصل شوید.
Asset-Importer-Lib (Assimp) یک کتابخانه منبع باز قدرتمند است که در C++ پیاده سازی شده است. این به توسعه دهندگان نرم افزار این قابلیت را می دهد که صحنه های هندسی را از فرمت های مختلف داده های سه بعدی در داخل برنامه های C++ خود بارگذاری و پردازش کنند. این کتابخانه مستقل از پلتفرم است و ادغام آسان با موتورهای بازی و اتصال به سایر زبان های برنامه نویسی را فراهم می کند.
چندین فرمت فایل سه بعدی در سراسر جهان وجود دارد و کتابخانه Assimp از چندین مورد مهم از آنها پشتیبانی می کند. این کتابخانه بسیار خوب سازماندهی شده است و از بیش از 40 فرمت فایل سه بعدی مانند Collada، 3D Studio Max 3DS و ASE، Biovision BVH، کتابخانه Polygon Stanford، AutoCAD DXF، فرمت فایل خنثی، Autodesk DXF، فرمت فایل شیء، Milkshape پشتیبانی می کند. 3D، LightWave Scene، و بسیاری موارد دیگر.
این کتابخانه برای یک بار وارد کردن عناصر از منابع مختلف و ذخیره آنها در فرمت مخصوص موتور برای دسترسی آسان و سریع بسیار مفید است. آخرین نسخه همچنین شامل پشتیبانی از صادرات فایل های سه بعدی به سایر فرمت های فایل پشتیبانی شده است. این کتابخانه از ویژگیهایی مانند بهبود موقعیت حافظه پنهان راس، مثلثسازی چند ضلعیهای دلخواه، جستجوی چند ضلعیهای منحط، تقسیم مشهای بزرگ برای غلبه بر محدودیتهای GPU، بهینهسازی مشها، اطمینان از حداکثر یکپارچگی داده با اعتبارسنجی ساختار خروجی و گرهها برای تماسهای کمتر و غیره پشتیبانی میکند.
شروع با Assimp
ساده ترین راه برای نصب کتابخانه Assimp از طریق cmake است. ابتدا باید cmake را نصب کنید. لطفا از دستور زیر برای نصب راحت استفاده کنید. برای ساخت کتابخانه کافیست یک command-prompt باز کنید، به پوشه repo بروید و cmake را اجرا کنید.
Assimp را از طریق cmake نصب کنید
cmake CMakeLists.txt
بارگیری و پردازش مدل های سه بعدی از طریق کتابخانه ++C
Open Asset Import Library (Assimp) شامل پشتیبانی از دسترسی و بارگذاری مدلهای سهبعدی از برخی قالبهای مدل سهبعدی رایج در برنامههای C++ است. شما باید مسیر فایل مدل سه بعدی را ارائه دهید و آن شروع به بارگذاری مدل می کند. شما به راحتی می توانید نمونه را ایجاد کنید و تمام اطلاعات مربوط به مدل را در داخل آن ذخیره کنید. کتابخانه مدل را به ترتیبی بارگیری و مطالعه می کند که مواد باید قبل از مش ها بارگذاری شوند و مش ها باید قبل از گره ها باشند.
تبدیل مدل های CAD از طریق C++
کتابخانه منبع باز Assimp به توسعه دهندگان نرم افزار این قابلیت را می دهد که با استفاده از برنامه های C++ مدل های CAD را به مدل های سه بعدی پشتیبانی شده دیگر بارگذاری و تبدیل کنند. شما باید آدرس فایل CAD را ارائه دهید و پس از بارگذاری می توانید به راحتی آن را به فرمت های پشتیبانی شده دیگر مانند DAE، STL، OBJ، PLY، STEP، 3MF، FBX و بسیاری دیگر تبدیل کنید.
وارد کردن و اعمال انیمیشن به مدل ها
Open Asset Import Library (Assimp) به برنامه نویسان نرم افزار این امکان را می دهد که انیمیشن ها را با استفاده از کد ++C بر روی مدل ها اعمال کنند. بهترین روش این است که ابتدا گرهها را در نمودار صحنه متحرک کنید، سپس میتوانید ماتریسهای استخوانی را از وضعیت فعلی نمودار صحنه محاسبه کنید.