جمعه, ۲۰ مهر, ۱۴۰۳ / 11 October, 2024
مجله ویستا
مروری بر موتورهای گرافیکی با نگاهی به موتور گرافیکی Unreal۳
پشت گرافیکهای پیشرفته و انیمیشنهای خیرهکننده بازیهای کامپیوتری، کدهای برنامهنویسان، محیطهای توسعه گرافیک، نرمافزارهای مدلسازی و انیمیشنسازی سهبعدی و موتورهای گرافیکی قراردارند. بازیهای کامیپوتری، ترکیبی از کدنویسی در چند محیط مجزا هستند و از این رو از انواع پیچیده نرمافزار به حساب میآیند. نوع موتور گرافیکی انتخاب شده برای ساخت یک بازی کامپیوتری، کاملا بر نتیجه کار تأثیرگذار است. بههمین خاطر هم بازیهای معروف و پرفروشی که دارای گرافیک پیشرفتهتری هستند، از موتورهای پیشرفتهتری استفاده میکنند. یکی از موتورهای گرافیکی که نام آن را هر گیم باز حرفهای شنیده است، Unreal است که بازیهای زیادی با سه ویرایش مشهور آن یعنی Unreal۲ ،Unreal۲x و Unreal۳ ساخته شدهاست. این موتورها توسط شرکت معروف Epic Games توسعه دادهشدهاند. این شرکت در ماه آگوست سال ۲۰۰۵ اعلام نمود که مدت دو سال است روی موتور Unreal۴ کار میکند و هدف آن کنسولهای نسل بعدی است. نسخههای ویژهای از این موتور گرافیکی برای سیستمهای ویندوز، OS X، لینوکس، پلیاستیشن ۲، اکسباکس، نینتندو و سگا طراحی شده است. در این مقاله کاربرد و ویژگیهای موتورهای گرافیکی و سپس نسخه مشهور Unreal۳ بررسی شده است و برای آشنایی، برخی ویژگیهای Unreal۲ و Unreal۲X نیز آورده شده است.
● کاربرد و ویژگیهای موتور گرافیکی
بازیهای دیروز با محیطها و کاراکترهای دو بعدی، تعداد رنگهای کمتر و بدون جلوههای ویژه (مانند دود، آتش، جریان آب و انفجار) تغییرات بسیاری به خود دیدهاند تا به صورت بازیهای کنونی درآیند. محیط و کاراکترهای سه بعدی، محدوده رنگ بسیار گستردهتر، جزئیات گرافیکی بیشتر و پیچیدگی، از ویژگیهای بازیهای امروزی است. هر چه بازی پیچیدهتر، جزئیات بیشتر و حرکات بازی سریعتر باشد، کار طراحی و برنامهنویسی نیز سختتر خواهد شد. پدیدآوردن اینگونه جلوهها بدون کمک نرمافزارهای توسعهدهنده بسیار سخت و وقتگیر است. برای نمونه، تصور کنید یک طراح مدل سه بعدی به جای طراحی یک اتومبیل با نرمافزارهای مدلسازی مانند D Studio Max۳، بخواهد با کدنویسی دستی آن را ایجاد نماید!
سرآغاز پیدایش موتورهای گرافیکی از اواسط دهه ۱۹۹۰ میلادی بود. این آغاز با پیدایش بازیهای سهبعدی درهم آمیخت و به پیشرفت آن سرعت بیشتری بخشید. شرکتهای تولیدکننده موتورهای گرافیکی، با دادن مجوز استفاده از محصول خود به دیگر شرکتهای تولیدکننده بازی، اجازه میدهند هسته این موتور در اختیار سایر برنامهنویسان و توسعهدهندگان بازی قرارگیرد و با تغییر در برخی قسمتهای آن و متناسب کردن موتور گرافیکی با بازی، خود دوباره از آن استفاده کنند. بازیهایی مانند CounterStrike ،Team Fortress و Strike Force، برپایه موتور گرافیکی Quake، محصول شرکت ID Software ساخته شدهاند.
بیشتر موتورهای گرافیکی مشمول قانون کپیرایت هستند و برای استفاده از آنها مجوز شرکت سازنده لازم است. دادن مجوز برای یک بار استفاده از موتور گرافیکی Unreal ساخت شرکت EpicGames بین ده تا هفتصد و پنجاه هزار دلار برای این شرکت درآمد دارد. البته برخی دیگر نیز مانند موتور گرافیکی Mad، اپنسورس هستند و استفاده از آن آزاد است.
موتور گرافیکی نرمافزاری است که کار Render کردن گرافیکی اجزا و محیطهای بازی را انجام میدهد. نمایش سه بعدی تصویر در نمایشگر دوبعدی نیز از کاربردهای اصلی موتورهای گرافیکی است. این کار به معنی انجامدادن بخش بزرگی از کار برنامهنویسان برای هر چه طبیعیتر جلوه دادن آن اجزا و محیطها است. موتور گرافیکی به خودی خود این کار را انجام نمیدهد، بلکه طراحان و سازندگان موتور گرافیکی آن را به گونهای که باید کار کند، برنامهریزی میکنند.
یک موتور گرافیکی باید بتواند چند ضلعیهای ساختاری را که هر لحظه باید روی نمایشگر نمایش یابد، ترسیم کند و بافت روی آن را بکشد. هر چه توانایی ترسیم چند ضلعیها در یک زمان مشخص بیشتر باشد، کیفیت و سرعت نمایش تصویر بالاتر میرود و بار پردازشی سختافزارهای کاربر، مانند کارت گرافیک، رم و CPU را کاهش میدهد. (در سیستم مدلسازی و انیمیشنسازی کنونی، یک مدل یا شی، از هزاران یا میلیونها چند ضلعی بسیار کوچک تشکیل میشود که در کنار هم مدلآن شی را میسازند). یک نمونه از این کار، توانایی بسیار بالای موتور گرافیک Unreal۳ در رندر نمودن ابر و مناظر طبیعی است.
درحالیکه این موتور گرافیکی در اصل برای بازیهای اکشن و رندرکردن انفجارها و برخوردها طراحی شده است. بدینترتیب، موتورهای گرافیکی با دقت و سرعت بسیار بیشتری نسبت به برنامهنویسان کار پردازش کدها و نمایش هر چه طبیعیتر مناظر مربوط به آنها را انجام میدهند.
از ویژگیهای یک موتور گرافیکی خوب، توانایی کاربرد آن در پلتفرمهای مختلف است. مثلا یک موتور گرافیکی میتواند هم در کنسولهای بازی و هم در سیستم ویندوز مایکروسافت اجرا شود. برخی موتورهای گرافیکی نیز برای بسیاری از پلتفرمهای دیگر مانند لینوکس و Mac هم قابل اجرا هستند. یکی از زیرشاخههای شناخته شده موتورهای گرافیکی، مربوط به بازیهای تیراندازی اول شخص (FPS) است.
بخش بزرگی از پیشرفتهای موتورهای گرافیکی هنگام ساخت این بازیها اتفاق افتاد. سرعت بالا و جابهجا شدن سریع تصاویر روی صفحه مانیتور، لزوم ترسیم سریعتر چندضلعیها، تنوع و گستردگی محیط بازی، و استفاده از رنگهای بیشتر، به موتورهای گرافیکی قویتری نیاز داشت. مانند بازی Unreal Tournament ۲۰۰۴ که بر پایه موتور گرافیکی Unreal۲ ساخته شده است.
اولین و اصلیترین کاربرد موتورهای گرافیکی ایجاد جلوههای کامپیوتری هر چه نزدیکتر به واقعیت است. ولی موتورهای گرافیکی بزرگ و قوی، تواناییهای بسیار دیگری دارند. مانند پشتیبانی از فرمتهای پیشرفته ویدیویی و صوتی، هوش مصنوعی و ... .
● میانافزارها
هماکنون برخی شرکتهای بازیسازی، نرمافزارهایی تحتعنوان میانافزار (middleware) تولید میکنند. این میانافزارها شامل تابعهایی برای توسعه گرافیک، صدا، هوش مصنوعی و ویژگیهای فیزیکی مدلهای طراحیشده هستند.
NDL۰۳۹;s Gamebryo وRender War دو نمونه بسیار پرکاربرد از این میانافزارها هستند. برخی از میانافزارها با سورسکد در اختیار برنامهنویسان قرار میگیرند. برخی سازندگان نیز تنها مجوز استفاده از API های میانافزار خود را به برنامهنویسان میدهند. البته نوع دوم مجوزدهی، کمهزینهتر از نوع اول است.
برخی از میانافزارها برای یک کاربرد خاص مانند رندرکردن درختان و گیاهان ساخته شدهاند و این کار را با کیفیت بیشتری نسبت به موتورهای گرافیکی چندمنظوره انجام میدهند. SpeedTree نمونهای از آنهاست. شکل ۱ تصویری از یک جنگل را که با این میانافزار رندرشدهاست، نشان میدهد.
● موتورهای گرافیکی Unreal
Unreal۳ پیشرفتهترین نوع این خانواده است. به همینخاطر ویژگیهای آن را بررسی میکنیم. ولی برای اینکه با دستهای از تفاوتهای این موتور با دو نوع پیشین آشنا شویم، برخی از ویژگیهای Unreal۲ و Unreal۲X نیز بیان شدهاست. از بازیهایی که بر پایه خانواده Unreal ساخته شدهاند، میتوان از Dead Man۰۳۹;s Hand ،Lineage II ،Unreal Championship ،Unreal Tournament و Unreal Tournament نام برد.
● Unreal۲
موتور گرافیکی Unreal۲ یک framework یا چارچوب توسعهدهنده کامل بازیهای کامپیوتری برای کامپیوترهای رومیزی، کنسولهای اکسباس و پلیاستیشن ۲ است. ابزارهای تست محصول (production-proven) و کدهای پایهای feature-rich، به تیم برنامهنویس و توسعهدهندگان بازیها امکان میدهد از همان ابتدای کار بتوانند همه بخشهای بازی مانند ساخت مدلها، طراحی مراحل بازی، طراحی واسط کاربر، برنامهنویسی و ... را انجام دهند. هر شخص از تیم سازنده بازی از بخشی از امکانات این موتور گرافیکی بهرهمیگیرد و بخشی از کار به صورت موازی و در نتیجه با سرعت بیشتر پیش میرود.
سیستم پیشرفته رندر کننده Unreal۲ از ویژگیهایی مانند سطوح آینهای و نیمه شفاف، آسمان و پسزمینهها با سیستمهای جدول نسبتدهی غیروابسته، برای چرخش و تغییر شکل مستقل اشیا پشتیبانی میکند.
پشتیبانی کامل از کارتهای گرافیکی کلاس Direct X۸ و پشتیبانی از رندر برای DirectX۶ در کارتهای گرافیکی پیشین، از دیگر ویژگیهای آن است که باعث میشود دارندگان کارتهای گرافیکی قدیمیتر هم بتوانند از بازیهای مبتنی بر Unreal۲ در کامپیوتر خود لذت ببرند.
همچنین زیرسیستم رندرینگ شاملDirect۳D ،OpenGL رندرکننده RAD Game Tools۰۳۹; Pixomatic software در کامپیوترهای دارای ویندوز به همراه Unreal۲ به فروش میرسد و در مجموع هزینهای برای کاربران ندارد. این مجموعه این اطمینان را میدهد که هر کامپیوتری با پردازنده مناسب خواهد توانست موتور گرافیکی Unreal۲ را بدون نیاز به پشتیبانی کارتهای ۳D از آن اجرا کند.
در سیستم انیمیشن Unreal۲، هریک از کانالهای چندگانه انیمیشن، با شاخصهای ترکیب و نقطه شروع متفاوت، امکان اجرای همزمان چند انیمیشن را در یک زمان فراهم میکنند. امکان توقف keyframeهای اسکلتی، حرکت بسیار روان اشیا را مستقل از نرخ نمایش فریمها در هر ثانیه، ممکن میکند.
ویژگیهای سیستم ضبط فیلم در Unreal۲ امکانات بسیاری دارد که میتوان به نمونههای زیر اشاره کرد: موتور Unreal۲ از ضبط فیلم از صحنههای بازی و قابلیت پخش دوباره فایلهای دموی ضبطشده پشتیبانی میکند. این فایلها میتوانند برای نمایش و آموزش تکنیکهای بازی، سودمند باشند. کاربرد گسترده و بسیار سودمند دیگر آن در تست محصول به صورت توزیع شده است و هر بخش از بازی میتواند جداگانه تست شود. پردازش فایلهای دموی تولید شده به فیلمهای DivX نیز از دیگر امکانات این موتور گرافیکی است. شکل ۲ تصویری از بازی مشهور Unreal Turnament ۲۰۰۴ را نشان میدهد که با موتور گرافیکی Unreal۲ ساخته شده است.
● Unreal۲X
در آن سوی جلوههای خیرهکننده بازی Unreal Championship۲ :The Liandri Conflict، موتور بسیار ارتقا یافتهUnreal ۲X قرار دارد. این موتور گرافیکی، سه تا چهار برابر تعداد چندضلعیهای رسم شده در یک ثانیه در بازیUnreal Champion اصلی را در نسخه دوم آن ترسیم کرده است. در حالیکه کیفیت تصاویر بازی، بالاتر از بسیاری از بازیهایی است که هماکنون باید روی کامپیوترهایی با پردازندههای قویتر اجرا شوند.
Unreal۲X دو مُد فیلد با دو عمق متفاوت را پشتیبانی میکند: مد اول برمبنای عمق کامل/مقدار شفافیت، و باورپذیری عمق بیشتر همیشه روشن و فعال است. مد دیگر برای بزرگنمایی و پدیدآوردن صحنههایی مانند نگاه کردن از دوربین یک تفنگ شکاری است.
موتور گرافیکی Unreal۲X، از فرمتهایی برای سطوح ویژه استفاده میکند که سایههایی با وضوح بیشتر را در کنسولهای Xbox میسازد. این سایهها یک چهارم حجمی را اشغال میکنند که سایههایی با این وضوح بدون استفاده از این سیستم بهبوددهنده اشغال میکنند. اصلاحگر دینامیک گاما برای نشان دادن سختی و جنس بعضی از سطوح روی صفحه نمایشگر، با استفاده از اصلاح سطوح نوردهی به کار میرود.
به علاوه، Unreal ۲X از ابزارها و امکانات ویژه دستگاههای Xbox نیز پشتیبانی کاملی به عمل میآورد که در زیر به چند نمونه از آن اشاره میشود:
۱) صدا و شبکه در سیستمهای Xbox
۲) مجموعه PIX که رفع خطای نرمافزاری و برطرف کردن مشکلات پیش روی افزایش کارایی گرافیکی سیستم را پشتیبانی میکند.
۳) XACT، که شامل کتابخانه فایلهای صوتی و ابزارهای ویرایش است.
● Unreal۳
موتور گرافیکی Unreal۳ مانند اسکلت توسعه بازیهای کامپیوتری برای کنسولهای بازی نسل بعدی و کامپیوترهای مجهز به DirectX۹، به حساب میآید. همچنین مجموعهای از فناوریهای پایهای، ابزارهای ایجاد محتوا (منظور از محتوا، همه اشیا و محیطهای موجود در بازی است) و پشتیبانی از نیازهای اصلی توسعهدهندگان بازیها را فراهم میآورد. به گفته Epic Games، بازیهایی که بر مبنای Unreal۳ طراحی شدهاند، از ماههای میانی سال ۲۰۰۶ میلادی آماده عرضه خواهند شد.
هر جزء از موتور گرافیکی با هدف آسانکردن ایجاد محتوا و برنامهنویسی، برای دادن توانایی بیشتر به سازندگان بازی طراحی شده است تا آنها بتوانند بازی را در یک محیط گرافیکی و با کمترین تعداد برنامهنویسان بسازند. بهعلاوه، ساختار توسعهدهنده ماجولار و قابل گسترش برای ساخت و تست بازیها در ژانرهای مختلف از دیگر مقاصد آن است. (در سیستم ماجولار، یک نرمافزار از بخشهای مجزایی ساخته شدهاست که هر بخش جداگانه میتواند گسترش یا تغییر یابد. این بخشها در کنار هم یک نرمافزار کامل را میسازند و رفع ایراد و گسترش چنین سیستمی آسانتر است).
ویژگیهای بصری Unreal۳ عبارتند از: خطوط رندرکننده دینامیک با سیستم رنگ ۶۴ بیتی، اصلاحکننده گاما که در بخش موتور گرافیکی Unreal۲X گفته شد، پشتیبانی از همه تکنیکهای نوردهی تک پیکسلی و رندرینگ شامل جدولبندی نرمال محدودهها و جدولهای مدیریتپذیر نوردهی.
از این گذشته Unreal۳ از چهار نوع تکنیک ایجاد سایه پشتیبانی میکند که عبارتند از:
▪ سایه بافر شده توسط الگوساز دینامیک، منابع نور متحرک و پویا را برای همه اشیا پشتیبانی میکند.
▪ کاراکترهای متحرک، سایههایی فازی (در سیستم فازی، سایهها ناگهان از جایی شروع و ناگهان در جایی قطع نمیشوند. این سیستم، تعویض رنگ را از سطحی به سطح دیگر به آرامی و نه ناگهانی انجام میدهد و صحنهها را به واقعیت نزدیکتر میکند) و پویایی روانی را در صحنه ایجاد و قالببندی میکنند.
▪ ماسکهای سایه پیش پردازش شده با کیفیت و کارایی بالا امکان پردازش آنلاین تعامل نورهای استاتیک را در وضعیت تابیدن و بازتاب نور فراهم میکنند.
▪ جدول محدوده نوردهی قابل مدیریت، سایهسازی استاتیک و همچنین پخش نور را برای منابع نامحدود نور، فعال میکند.
همچنین سیستم طراحی جزئیات قابل گسترش با محیط گرافیکی که دست طراحان را در ساخت جزئیات فیزیکی باز میگذارد، از دیگر ویژگیهای Unreal۳ است که در ادامه به پارهای از آنها اشاره میشود:
- سیستم طراحی فیزیکی اشیا نیز بسیار جالب توجه است. در موتور گرافیکی Unreal۳، همه اشیای قابل رندر شدن، دارای ویژگیهای فیزیکی هستند. مانند ساییده شدن دو سطح روی یکدیگر.
-UnrealPhAT ، ابزاری است که در بخش ابزار Unreal Ed (ویرایشگر Unreal) قرار دارد و برای مدلسازی فیزیکی (یعنی طراحی ویژگیهای فیزیکی یک شی) به کار میرود.
- سیستم متحرکسازی اسکلتی بیش از چهار ستون اصلی را برای هر یک زاویه و نیز اسکلتهای ترکیبی را پشتیبانی میکند.
-AnimSet Viewer، برای بررسی و سازماندهی مشها و انیمیشنها به کار میرود. (منظور از مش، همان ساختار متشکل از چند ضلعیهاست که قبلاً به آن اشاره شد).
- انیمیشن توسط AnimTree که ساختاری درختی از گرههای قابل حرکت یک شی است میتواند کنترل شود.AnimTree، شامل امکاناتی مانند کنترلر بافتهای ترکیبی است که راههای نامحدودی را برای ترکیب اشیای قابل حرکت توخالی فراهم میکند.
-AnimTree Editor به برنامهنویسان و انیماتورها امکان ترکیب مواد چندگانه با هم، تنظیم کنترلرها و نمایش همزمان آن در این ویرایشگر را میدهد. در شکل Anim Tree Editor۵ و ساختار سلسله مراتبی ویژگیهای یک شی مانند آن سرباز نشان داده شده است.
● چارچوب بازی و هوش مصنوعی در Unreal۳
- سیستم چند لایهای و قدرتمند هوش مصنوعی، امکان مسیریابی، ناوبری مرحله چندگانه (مانند برخی بازیها که در آن در هر بار آغاز یک مرحله، دشمنان شما در جایی متفاوت از جای قبل ایستاندهاند یا رفتاری متفاوت از خود نشان میدهند. این تکنیک در بازی، کاراکترهای مقابل شما را کمتر پیشبینیپذیر میکند)، تصمیمگیری شخصی هر کاراکتر (و نه تبعیت از یک فرمول برای همه کاراکترها) و هوش مصنوعی تیمی را فراهم میکند.
هوش مصنوعی تیمی برای هدفهای درازمدت به ویژه در بازیهای استراتژیک یا نیمه استراتژیک به کارمیرود. مانند زمانی که هدف شما در یک مرحله، رسیدن به یک محل خاص است. ولی شما و همتیمیهایتان باید پیش از آن، موانع مختلفی را پشتسر بگذارید.
از دیگر ویژگیهای Unreal۳ میتوان به این موارد هم اشاره کرد:
- مسیرهای هوش مصنوعی در UnrealEd، قابل مشاهده و ویرایش است و میتواند بسته به خواست طراحان، سفارشی شود.
UnrealKismet- سیستم اسکریپتنویسی موتور گرافیکی Unreal۳ است. با این سیستم هنرمندان طراح مراحل بازی میتوانند کنترل مجازی نامحدودی بر چگونگی کار یک مرحله بازی داشته باشند؛ بدون اینکه نیازی به دسترسی به یک خط از برنامه باشد.
با ارتباط دادن رویدادهای ساده و عملکردهای طراحی شده برای اشیا توسط برنامهنویسان، هر چیزی، از رفتارهای تکتک اشیا گرفته تا نمونههای اولیه بازی، به سرعت قابل اسمبل و ترکیب شدن هستند.
- سیستم صدا در Unreal۳، از فرمتهای صوتی اصلی در هر پلتفرم، شامل صدای فراگیر کانالهای صوتی ۱/۵ و سیستم دیجیتالی دالبی پشتیبانی میکند و امکان تولید صدای سه بعدی را نیز فراهم میآورد. همچنین Visual Sound Tool در UnrealEd، به طراحان امکان میدهد بهطور کامل صداها، سطوح صدا، ترتیب و چرخه ایجاد صدا، فیلترهای صوتی، تجزیه صدا و صحنههای بازی، سینمایی و انیمیشن را در بازی کنترل نمایند.
- امکانات شبکه نیز در فناوری Unreal قدرتمند است. اینترنت و شبکههای LAN از مشخصههای شرکت Epic در بازیهای رقابتی گذشته مانند بازی Unreal Tournament ۲۰۰۴ بوده است.
موتور گرافیکی Unreal، معماری شبکه سطح بالا و انعطافپذیری مناسب با بسیاری از ژانرهای بازی را دارد.
- برنامهنویسی شبکه برای بازیها در Unreal، سطح بالا است و امکان تعریف متغیرها و توابع به کدهای برنامه را در UnrealScript فراهم میکند تا به انتقال آنها بین سیستم کلاینت و سرور بپردازد و وضعیت بازی را بین دو سیستم کلاینت و سرور حفظ کند.
ـ انتقال سطح پایین اطلاعات در شبکههای Unreal (منظور از سطح پایین، ناکارآمد نیست. بلکه نزدیک به سطح سختافزار و تقریباً سازگار با حداقلهای آن است)، مبتنی برUDP است و شمای سیگنالهای مرتبط و نامرتبط را با هم ترکیبمیکند تا کارایی و کیفیت انجامدادن بازی را حتی در مسیرهای با پهنای باند کم و تاخیر زیاد نیز بالا ببرد.
در مدل کلاینت سرور، امکان بازی بیش از ۶۴ بازیکننده همزمان و بیش از شانزده بازیکننده در شبکههای نظیربهنظیر (peer-to-peer) فراهم شده است. امکان بازی در شبکه بین پلتفرمهای مختلف مانند ویندوز، مکینتاش، لینوکس و ... نیز وجود دارد.
منبع : سایت آمل تک
وایرال شده در شبکههای اجتماعی
ایران مسعود پزشکیان دولت چهاردهم پزشکیان مجلس شورای اسلامی محمدرضا عارف دولت مجلس کابینه دولت چهاردهم اسماعیل هنیه کابینه پزشکیان محمدجواد ظریف
پیاده روی اربعین تهران عراق پلیس تصادف هواشناسی شهرداری تهران سرقت بازنشستگان قتل آموزش و پرورش دستگیری
ایران خودرو خودرو وام قیمت طلا قیمت دلار قیمت خودرو بانک مرکزی برق بازار خودرو بورس بازار سرمایه قیمت سکه
میراث فرهنگی میدان آزادی سینما رهبر انقلاب بیتا فرهی وزارت فرهنگ و ارشاد اسلامی سینمای ایران تلویزیون کتاب تئاتر موسیقی
وزارت علوم تحقیقات و فناوری آزمون
رژیم صهیونیستی غزه روسیه حماس آمریکا فلسطین جنگ غزه اوکراین حزب الله لبنان دونالد ترامپ طوفان الاقصی ترکیه
پرسپولیس فوتبال ذوب آهن لیگ برتر استقلال لیگ برتر ایران المپیک المپیک 2024 پاریس رئال مادرید لیگ برتر فوتبال ایران مهدی تاج باشگاه پرسپولیس
هوش مصنوعی فناوری سامسونگ ایلان ماسک گوگل تلگرام گوشی ستار هاشمی مریخ روزنامه
فشار خون آلزایمر رژیم غذایی مغز دیابت چاقی افسردگی سلامت پوست