تبلیغات
تبلیغات
تبلیغات
تبلیغات

اسکریپت نویسی و توسعه نرم افزار تری دی مکس 2015 با ++C
(1 مشاهده) (1) مهمان
  • صفحه:
  • 1
  • 2
  • 3

موضوع: اسکریپت نویسی و توسعه نرم افزار تری دی مکس 2015 با ++C

اسکریپت نویسی و توسعه نرم افزار تری دی مکس 2015 با ++C 4 سال, 3 ماه پیش #33704

  • behzadi90
  • آفلاین
  • كاربر کوشا
  • ارسال: 430
  • دریافت تشكر: 448
  • 
سلام دوستان عزیز.
دوستان در مکس 2015 بجز دو زبان مکس اسکریپت و پایتون قابلیت توسعه نرم افزار و اسکریپت نویسی با زبان ++C هم امکانپذیره؟؟؟
دوستان برنامه نویس و اسکریپت نویس اگر محبت کنن و یه توضیح مختصر در رابطه با استفاده از این زبانها و تفاوت ها و برتری های اونها نسبت به هم بدن خیلی ممنون میشم.
کانال منابع آموزشی طراحی و هنرهای تجسمی Behzadi_Arts@
كاربران زیر تشكر كردند: Ali.n

پاسخ: اسکریپت نویسی و توسعه نرم افزار تری دی مکس 2015 با ++C 4 سال, 3 ماه پیش #33708

  • Ali.n
  • آفلاین
  • كاربر حرفه ای
  • علی نورشرق - پسر 17 ساله و دوستدار تکنولوژی
  • ارسال: 1281
  • دریافت تشكر: 1424
درود بر تو
من چند وقته مکس اسکریپت حرفه ای مینویسم و برنامه نویسی ساده به زبان Visual basic و انشااالله در آینده #C رو انجام میدم.
الان دارم برای 3dsmax2014 پلاگین مینویسم،
بینید، زبان اسکریپت نویسی در مکس، مهم نیست، فقط به شما کمک میکنه، ( البته اگر دارید برای نرم افزار خاصی مثلا 3dsmax اسکریپت مینویسید،) این که فقط هوشمندی اون زبان ها در رنگ ها و فونت های کلمات اسکریپت تغییر میکنه،
این اسکریپتی که من دارم مینویسم:

با زبان MaxScript :

برای بزرگ نمایی روی عکس کلیک نمایید.


Resources :

برای بزرگ نمایی روی عکس کلیک نمایید.


XML :

برای بزرگ نمایی روی عکس کلیک نمایید.


واقعا که اسکریپت و برنامه نویسی شیرینه!!!


موفق باشید.
www.3dsmax-vray.ir

نمونه کار های من


توسعه دهنده ی اپلیکیشن سیستم عامل اندروید؛
نرم افزار ویندوز؛
طراح گرافیک؛
و برنامه نویس میکروکنترلر و سخت افزار.

تاپیک سورس کد و آموزش برنامه نویسی

instagram.com/AliNourshargh
telegram.me/AliNourshargh
آخرین ویرایش: 4 سال, 3 ماه پیش ارسال توسط Ali.n.
كاربران زیر تشكر كردند: behzadi90, ♥Ehsan♥

پاسخ: اسکریپت نویسی و توسعه نرم افزار تری دی مکس 2015 با ++C 4 سال, 3 ماه پیش #33719

  • naser196
  • آفلاین
  • كاربر حرفه ای
  • ID Garena:JOHNY CASH
  • ارسال: 3314
  • دریافت تشكر: 5043
سلام.محمد زبان اسکریپ نویسی با زبان برنامه نویسی فرق میکنه.
اسکریپ از بالا تا پایین اجرا میشه ولی زبان برنامه نویسی نیاز به کامپایل کردن داره یعنی نرم افزار دیگه ای باید این زبان رو ترجمه کنه.
مکس و مایا و سینما فوردی و . .. هیچ کدوم زبان c++ رو ساپورت نمی کنند البته خودشون با این زبان ها نوشته می شن ولی نمی تونی خودت به تنهایی استفاده کنی مگر اینکه یه توسعه دهنده نرم افزار باشی.
قدرت زبان های برنامه نویسی بالاتره از اسکریپ نویسی ولی با این حال که پایتون زبان اسکریپ نویسیه ولی میگن برای خودش یه زیان برنامه نویسیه پس حتما یادش بگیر.
فعلا
آخرین ویرایش: 4 سال, 3 ماه پیش ارسال توسط naser196.
كاربران زیر تشكر كردند: amir, behzadi90

پاسخ: اسکریپت نویسی و توسعه نرم افزار تری دی مکس 2015 با ++C 4 سال, 3 ماه پیش #33720

  • behzadi90
  • آفلاین
  • كاربر کوشا
  • ارسال: 430
  • دریافت تشكر: 448
ناصر جان خیلی لطف کردی که جواب دادی. اصلا تازه گرفتم که چی شد. پس زبان های اسکریپت نویسی یه جور زبان مفسر هستن برعکس زبان های برنامه نویسی مثل c و پاسکال و ... که کامپایلر دارن و یکجا برنامه کمپایل میشه و بعد اجرا میشه.

اما ناصر جان من یکجا خوندم که مایا رو میشه با ++C گسترش داد و مثلا واسش پلاگین نوشت ولی حتما منظورشون این بوده که خارج از محیط مایا و توی خود محیط مثلا ویژوال ++C باید برنامه نوشته بشه و کمپایل بشه بعد مثلا این پلاگین توی مایا نصب بشه درسته؟؟؟

نمیدونم تا حدودی تونستم درست بگم یا نه؟

مثلا موتور های رندر با چی نوشته میشن؟؟؟ یا اصلا همین وی ری با چی نوشته شده؟؟
کانال منابع آموزشی طراحی و هنرهای تجسمی Behzadi_Arts@

پاسخ: اسکریپت نویسی و توسعه نرم افزار تری دی مکس 2015 با ++C 4 سال, 3 ماه پیش #33723

  • naser196
  • آفلاین
  • كاربر حرفه ای
  • ID Garena:JOHNY CASH
  • ارسال: 3314
  • دریافت تشكر: 5043
درسته.
ببین هر چیزی که نصب بشه بر روی سیستم و بعد تو نرم افزار سه بعدیت اجرا بشه می شه پلاگین.موتور های رندر پلاگین هستند چون نصب میشن.
مایا و مکس همه نرم افزارها خب معلومه با C++ طراحی میشن و می تونی با همین زبان و یکسری زبان های دیگه این نرم افزارهارو گسترش بدی.
ولی مثلا نمی تونی با زبان C++ تو خوده محیط کد بنویسی و مثلا نتیجه اش و ببینی.
فقط یه نرم افزاره که در زبان از C++ تو خوده نرم افزار استفاده کنی که اون هودینیه،تا حالا شنیدی می گن با هودینی انجین میشه با نرم افزارهای دیگه ارتباط برقرار کرد؟ چون کسی که با هودینی کار میکنه به راحتی به C++ کد می نویسه و بعد منتقل می کنه به نرم افزارهای دیگه.
هودینی: HSCRIPT-PYTHON-C++(VEX
سینما فوردی:PYTHON-C.O.O.F.E
مکس: MAX SCRIPT-PYTHON
مایا:MEL-PYTHON
اول اسکریپ نویسیت و قوی کن بعد پایتون بعد برو سراغ C++ اگر این مراحل رو طی کنی و به C++ برسی و بتونی خیلی خوب بین نرم افزارها ازتباط برقرار کنی و براشون ابزار بنویسی اونجا به مقام تکنیکال آرتیست و R&D میرسی.
فعلا
كاربران زیر تشكر كردند: amir, behzadi90

پاسخ: اسکریپت نویسی و توسعه نرم افزار تری دی مکس 2015 با ++C 4 سال, 3 ماه پیش #33726

  • mohamad.zakery
  • آفلاین
  • ناظر، نویسنده، مدرس و عضو تیم پادکست
  • ارسال: 1400
  • دریافت تشكر: 3720
سلام دوستان
از اونجایی که من عاشق کدنویسیم بذارید توضیحات ناصر جان کامل کنم:
زبانهای برنامه نویسی به چند دسته تقسیم بندی کلاسیک میشوند:
1-نسل اول یا زبان ماشین که عملا با 0 و 1 در ارتباطیم
2-نسل دوم که با طراحی زبان اسمبلی شکل گرفت و تاحد زیادی سخت و مشقت برنامه نویسی به زبان ماشین حل کرد و پایه گذار نسلهای بعدی شد. برای نمونه من نمونه کدی که دو عدد که از حافظه گرفته میشود جمع میکند مینویسم:
در دیتا سگمنت
a1 db 3
 2 a2 db

در سگمنت کد
mov ah,0
mov al,a1
mov bh,0
mov bl,a2
add ax,bx



3- نسل بعدی نسل زبانهای سطح میانی یا ساخت یافته(procedural) که از لحاظ نزدیکی به ماشین در لایه بالاتری از اسمبلی قرار میگیرند و میشود برنامه های باسرعتی بالایی نوشت. زبانهای C و Pascal نمونه ای از این نسل هستند. در این نسل شما بصورت مستقیم میتوانید دستورات اسمبلی قرار دهید. این نسل بسیار به زبان انسان نزدیک شدند و دستورات به زبان انگلیسی هستند.
نمونه برنامه بالا در زبان c

int a1=3;
int a2=2
int a3=a1+a2;


4- نسل بعدی زبانهای سطح بالا
در این نسل زبانهایی مثل Visual c,Visual basic, Delphiو ... قرار دارند که از لحاظ نزدیکی به ماشین از نسل قبلی خود دورترند ولی انعطاف و سهولت بیشتری دارند. پایه زبانهای شی گرا در این نسل و اوایل دهه 70 میلادی شکل گرفت بیارنه استراستروپ در آزمایشگاه کمپانی At&t نسل جدیدی از زبان c که قابلیت های شیگرایی کلاسیک را داشت ایجاد شد و در سالهای میانی دهه 90 با ظهور جاوا به کمال رسید هرچند به دبد خیلی از صاحبنظران زبانهای شیگرا نسل پنجم زبانهای برنامه نویسی هستند ولی عده ای هم معتقدند که این زبانها شامل دسته چهارم میشوند
5-نسل زبانهای مستقیم انسانی
سالهاست توسعه دهندگان در حال توسعه این نسل هستند تا برنامه نویسی توسط زبان مستقیم انسان صورت گیرد بصورتیکه شما با ماشین تعامل مستقیم داشته باشید. کمپانیهای عظیمی چون اوراکل، مایکروسافت و آی بی ام، میلیاردها دلار خرج میکنند تا فقط پیش نیاز های این نسل مثل بینایی ماشین، صدای ماشین و هوشمندی ماشین ایجاد شود که پیشرفتهای خوبی هم داشته اند و هنوز در حال کار هستند.


حالا به بررسی دو شیوه متفاوت اجرای برنامه میپردازیم:
1-کامپایل
2-تفسیر

حتما شما آشنایی با این 2 مورد دارید اما من باز هم توضیح تکمیلی ارائه میکنم:
1- کامپایل:
به شیوه ای از اجرا دستورات که بعد از اتمام کدنویسی، کدها برای تحلیل و بررسی به کامپایلر ارسال میشود و در صورت نبود خطا دستورات به اسمبلی های ماشین تبدیل میشوند اطلاق میشود. اما کامپایلر چه مواردی را بررسی میکند و مراحل کامپایل به چه صورت است:

1- تحلیل واژه ای (Lexical Analysis)
2-تحلیل نحوی (Syntax Analysis)
3- تحلیل معنایی (Semantic Analysis)
4- تولید کد میانی (Intermediate Code Generation)
5- بهینه سازی کد (Cod Optimization)
6- تولید کد نهایی (Code Generation)

در این شیوه چون قبل از اجرا بسیاری از خطا ها گرفته میشود و کدها بهینه میشوند سرعت اجرا بسیار بالاست و احتمال خطا کمتر است

اما دسته دوم یا مفسری ها دارای تفاوت با کامپایلریها هستند:

مفسر چیست ؟
به جای آنکه برنامه هدف به صورات ترجمه شده تولید بشود , عملیاتی که در برنامه مبداء وجود دارد یکی پس از دیگری اجرا میکند.( خروجی تولید نمی کند )
تفاوت بین کامپایلر و مفسر در چیست؟
1 ) مفسر , خط به خط برنامه ورودی را ترجمه و تفسیر میکند این در حالیت که کامپایلر تمام خطوط برنامه ورودی را به یکباره ترجمه میکند.
2 ) در هر خطی از برنامه که کاربر دارای خطا یا اشتباه باشد مفسر در همان لحظه خطا را آشکار میکند و در خواست رفع اشکال می نماید از برنامه نویس ( زبان هایی مانند بیسیک و لیسپ از این نوع هستند ).اما کامپایلر در پایان کار برنامه نویس اقدام به بررسی تمام خطوط برنامه نموده و خطاها را اعلام میکند.
نکته : از (2) نتیجه می گیریم که سرعت ترجمه در مفسر بیشتر از کامپایلر است و خطایابی و تصحیح خطا توسط کاربر با راحتی بیشتری انجام میگیرد.
3 ) پیاده سازی مفسر از کامپایلر ساده تر است.
4 ) این قضیه صحت دارد که سرعت ترجمه مفسر از کامپایلر بیشتر است , اما سرعت اجرای برنامه ای که کامپایل شده بسیار بیشتر از برنامه ای است که تفسیر شده.
5 ) برنامه روی یک کامپیوتر میزبان یک بار کامپایل می شود و در دفعات بعدی فقط اجرا خواهد شد در صورتی که در مفسر,در هر باری که برنامه از ابتدا تا انتها تفسیر و سپس ترجمه میشود.
6 ) مفسر یک محیط مجازی برای اجرای برنامه کاربر ایجاد می کند در واقع محیط اجرایی برنامه به همراه برنامه کاربر وجود داشته و امکان اجرای برنامه در هر کامپیوتر میزبان دیگری داده خواهد شد.اما در کامپایلر وضع به گونه ای دیگر است زیرا کد مقصد تولید شده به زبان ماشین,مربوط به همان ماشین ( کامپیوتر ) میزبانی است که کامپایلر بر روی آن نصب شده و در کامپیوتر دیگر باید برنامه مجددا کامپایل شود.
7 ) در دسترسی به اصل برنامه مبداء,کامپایلر دارای امنیت بیشتری نسبت به مفسر است.

یکی از چالشهای مفسرها مسئله حلقه هاست!!!:
یکی از نقاط ضعف مفسرها نسبت به کامپایلرها همین حلقه هاست.
کامپایلر یک حلقه 10 تایی رو 1 بار ترجمه و 10 بار اجرا میکنه ولی مفسر همین حلقه رو 10 بار ترجمه و 10 بار هم اجرا میکنه. پس هنگام برنامه نویسی با زبانهای مفسری باید حواستون باشه کمتر از حلقه استفاده کنید.

این از توضیحات قسمت اول؛ اما هدف من از این توضیحات در ادامه ببینید:
----------------------------------------------------------------------------------------------------------------------------------------------------

هرچقدر زبانهای برنامه نویسی به قول امروزی ها ساده تر باشند یقین داشته باشید که از ماشین دورترند و بسیار کندتر!!! این یک اصل است؛ اما پس چه دلیل وجود داره که زبانی مثل پایتون یا زبانهای اسکریپت نویسی و یا حتی زبان عظیم و گرانقدری چون جاوا از مفسر استفاده میکنند؟
دلیل مشخص است؛ سخت افزارها بسیار قویتر شده اند و زمان اجرا کاهش پیدا کرده، اما دقت کنید در نوشتن برنامه هایی که کارهای سنگین پردازشی دارید به هیچ عنوان سمت زبانهای مفسری نروید و فقط و فقط از زبانهای کامپایلری سطح میانی چون c استفاده کنید!!
اگر قصد توشتن پلاگینهای ساده مثل مدیریت فایل یا تنظیم کردن مشخصات یا انیمیت های محدود از زبانهای مفسری استفاده کنید وگرنه باید یزوید سمت SDK نرم افزارتون و اونو با استفاده از زبانهای خانواده C مثل Visual c++ و دقت کنید نوع Win32 در ویندوز توسعه دهید.
اینکار نیازمند دانش کدنویسی بالایی مثل آشنایی کامل با منظق شی گرایی، داشتن دید توسعه دهنده و همچنین آشنایی با Api های Sdk مورد نظر داشته باشید.
البته راه دیگه استفاده از wrapperهای Sdk هست که برای محیط .net توسعه داده شده اند اما محدودترند هم هست.
انشالله اگر عمری باشید در آینده ای نزدیک دوره آموزشی توسعه ابزارها در مکس با استفاده از sdk نرم افزار مکس هم در win32 و هم در .net ایجاد میکنم.
من الله توفیق

مقاله جدید در موردیونیتی 2018 :
sava-studio.ir/Home/ViewNews/3



سایت جدیدم راه اندازی شد. به سایت استودیو ساوا مراجعه کنید. نمونه کارها و خدمات من در اونجا موجود است.
كاربران زیر تشكر كردند: Mostafa3D, amir, behzadi90, naser196, moodna, 1252366, Houdinian
  • صفحه:
  • 1
  • 2
  • 3
زمان ایجاد صفحه: 0.17 ثانیه

جدیدترین آثار ارسالی در گالری

تبلیغات
تبلیغات

جدیدترین ارسالهای تالارگفتگو