وقتی در پاییز منتشر می شود در iOS 7، ما یک سری ویژگی های جدید را در دستگاه های اپل خود دریافت خواهیم کرد. اپل علاوه بر ظاهر کاملاً بازطراحی شده و حتی گاهی بحث برانگیز، الگوی کاملاً جدیدی از لذت کاربر را به ما ارائه می دهد. به نظر می رسد اپل با این اقدام شدید می خواهد سیستم موبایل خود را برای دهه آینده آماده کند.
از جمله موارد جدید، به اصطلاح اثر اختلاف منظر است. اگر باید نقل قول کنم ویکیپدیااختلاف منظر (از یونانی παράλλαξις (parallaxis) به معنای "تغییر") زاویه ای است که توسط خطوط مستقیم کشیده شده از دو مکان مختلف در فضا به نقطه مشاهده شده کشیده می شود. اختلاف منظر همچنین به عنوان تفاوت ظاهری در موقعیت یک نقطه نسبت به پسزمینه هنگامی که از دو مکان مختلف مشاهده میشود، گفته میشود. هر چه جسم مشاهده شده از نقاط مشاهده دورتر باشد، اختلاف منظر کوچکتر است. احتمالاً بیشتر شما در خاطره میزهای مدرسه و کلاس های خسته کننده فیزیک دچار مشکل می شوید.
در عمل، این به سادگی به این معنی است که با کمی برنامه نویسی هوشمندانه، صفحه نمایش به چیزی بیشتر تبدیل می شود. ناگهان، این فقط یک سطح دو بعدی با ماتریس هایی از آیکون ها و سایر عناصر محیط کاربری نیست، بلکه یک پنل شیشه ای است که کاربر از طریق آن می تواند در حین فیلمبرداری از دستگاه، دنیای سه بعدی را ببیند.
پرسپکتیو و اختلاف منظر
اصل اساسی نحوه ایجاد یک افکت اختلاف منظر عملکردی در یک صفحه نمایش دو بعدی بسیار ساده است. از آنجایی که نور از چشم به یک نقطه عبور می کند، مغز باید یاد می گرفت اندازه اشیاء را نسبت به زاویه بین لبه های آنها تشخیص دهد. نتیجه این است که اجسام نزدیکتر بزرگ به نظر می رسند، در حالی که اجسام دور کوچک به نظر می رسند.
اینها اصول ادراک پرسپکتیو هستند که مطمئنم هر کدام از شما در مقطعی نام آنها را شنیده اید. اختلاف منظر، در این زمینه iOS، حرکت ظاهری بین این اشیاء است که شما در اطراف آنها حرکت می کنید. به عنوان مثال، هنگامی که در حال رانندگی با ماشین هستید، اشیاء نزدیکتر (درختان کنار شانه) سریعتر از چیزهای دورتر (تپه ها در دوردست) حرکت می کنند، حتی اگر همه آنها ثابت باشند. هر چیزی با همان سرعت جای خود را به طور متفاوت تغییر می دهد.
در کنار چندین ترفند دیگر از فیزیک، پرسپکتیو و اختلاف منظر نقش بسیار مهمی در درک ما از جهان اطراف ما دارند و ما را قادر میسازند تا احساسات بصری مختلفی را که چشمانمان میگیرند مرتب کنیم و درک کنیم. علاوه بر این، عکاسان با حس پرسپکتیو آنها دوست دارند بازی کنند.
از موشک گرفته تا گوشی
در iOS، اثر اختلاف منظر به طور کامل توسط خود سیستم عامل شبیه سازی شده است، با کمک کمی از فناوری که در ابتدا برای وسایل نقلیه پرتاب توسعه داده شده بود. در داخل جدیدترین دستگاههای iOS، ژیروسکوپهای ارتعاشی قرار دارند، دستگاههایی کوچکتر از موی انسان که هنگام قرار گرفتن در معرض بار الکتریکی در فرکانس مشخصی نوسان میکنند.
به محض شروع حرکت دستگاه در امتداد هر یک از سه محور، کل مکانیسم شروع به مقاومت در برابر تغییر جهت به دلیل قانون اول نیوتن یا قانون اینرسی می کند. این پدیده به سخت افزار اجازه می دهد تا سرعت و جهت چرخش دستگاه را اندازه گیری کند.
به این یک شتابسنج اضافه کنید که میتواند جهت دستگاه را تشخیص دهد، و ما یک تعامل ایدهآل از سنسورها برای تشخیص دقیق دادههای لازم برای ایجاد افکت اختلاف منظر را به دست میآوریم. با استفاده از آنها، iOS به راحتی می تواند حرکت نسبی تک تک لایه های محیط کاربر را محاسبه کند.
اختلاف منظر برای همه
مشکل اختلاف منظر و توهم عمق را می توان به لطف ریاضیات به روشی ساده حل کرد. تنها چیزی که نرم افزار باید بداند این است که محتوا را در مجموعه ای از هواپیماها سازماندهی کند و سپس بسته به فاصله درک شده از چشم آنها را جابجا کند. نتیجه یک رندر واقعی از عمق خواهد بود.
اگر تماشا کرده اید WWDC 2013 یا ویدیوی معرفی iOS 7، جلوه اختلاف منظر به وضوح در صفحه نماد اصلی نشان داده شد. هنگام حرکت آیفون، به نظر می رسد که آنها در بالای پس زمینه شناور هستند، که تصوری مصنوعی از فضا ایجاد می کند. مثال دیگر حرکت ظریف تب های باز در سافاری است.
با این حال، جزئیات دقیق در حال حاضر در هاله ای از ابهام است. تنها یک چیز واضح است - اپل قصد دارد اختلاف منظر را در کل سیستم ایجاد کند. این ممکن است دلیل عدم پشتیبانی iOS 7 در iPhone 3GS و نسل اول iPad باشد، زیرا هیچ یک از دستگاه ها ژیروسکوپ ندارند. می توان انتظار داشت که اپل یک API برای توسعه دهندگان شخص ثالث منتشر کند تا از بعد سوم نیز بهره مند شوند، همه بدون مصرف انرژی زیاد.
نابغه یا قلوه سنگ؟
در حالی که بیشتر جلوههای بصری iOS 7 را میتوان به طور جامع و بهطور کامل توصیف کرد، اختلاف منظر به تجربه خاص خود نیاز دارد. میتوانید دهها ویدیو، چه رسمی و چه غیر رسمی تماشا کنید، اما قطعاً بدون امتحان کردن خودتان، اثر اختلاف منظر را ارزیابی نکنید. در غیر این صورت، شما این تصور را خواهید داشت که این فقط یک اثر "چشمی" است.
اما زمانی که دستگاه iOS 7 را در دست بگیرید، بعد دیگری را در پشت صفحه نمایش خواهید دید. این چیزی است که توصیف آن با کلمات بسیار دشوار است. نمایشگر دیگر فقط یک بوم نیست که برنامه های کاربردی که تقلیدی از مواد واقعی را نمایش می دهند بر روی آن رندر شوند. اینها با جلوه های بصری جایگزین می شوند که در عین حال مصنوعی و واقعی خواهند بود.
به احتمال زیاد، زمانی که توسعهدهندگان شروع به استفاده از افکت اختلاف منظر کنند، برنامهها غرق در آن خواهند شد زیرا همه سعی میکنند راه درست استفاده از آن را بیابند. با این حال، وضعیت به زودی تثبیت خواهد شد، درست مانند نسخه های قبلی iOS. با این حال، در همان زمان، برنامه های کاملاً جدید روشنایی روز را خواهند دید، امکاناتی که امروز فقط می توانیم در مورد آنها رویاپردازی کنیم.
سوال این است که اگر API را برای توسعه دهندگان شخص ثالث منتشر کنند، رقبا به سرعت از آن استفاده نمی کنند. ؟! این شرم آور خواهد بود! :(
والپیپر زنده Paralax چند روز پس از معرفی ios7 برای اندروید منتشر شد. مرکز کنترل بعد از حدود یک هفته حدس می زنم.
تصویر زمینه زنده Paralax مدت ها قبل از iOS 7 منتشر شده بود :-) وقتی ال جی Optimus 3D داشتم، متأسف بودم که فقط در موارد خاصی از 3 بعدی استفاده می کرد، بنابراین یک والپیپر زنده قرار دادم که یک افکت سه بعدی را شبیه سازی می کرد :-) در زیر Parallax Barrier، همچنین فناوری LG Optimus 3D و HTC EVO 3D و در حال حاضر حتی چند تلویزیون جدید را پنهان می کند. سازنده اصلی این فناوری برای سه بعدی بدون عینک BMW در رایانه های داخلی بود تا راننده بتواند ناوبری و مسافر یک فیلم را تماشا کند. در غیر این صورت، در iOS 3، این اثر اغلب ظاهر می شود - روی دسکتاپ، در سافاری، روی دسکتاپ قفل شده هنگام استفاده از عکس های پانوراما، و همچنین زمانی که حجم صدا کاهش می یابد. من را آزار می دهد که آنها ویژگی های نسبتاً جالبی را در نسخه های بتا حذف می کنند. صفحه کلید شفاف در پیام ها از بین رفته است، نوار اعلان شفاف از بین رفته است….
API برای توسعه دهندگان شخص ثالث تأثیر زیادی در این مورد ندارد. سیستمهای رقیب نمیتوانند از این API استفاده کنند، بنابراین تنها کاری که باید انجام شود مهندسی معکوس آن است. و این با چنین اثر مستند* چندان منطقی نیست.
*حالا فکر نمیکنم کد دقیق iOS را در هیچ کجا پیدا کنید، اما اختلاف منظر، مانند پرسپکتیو، یک پدیده نسبتاً شناخته شده و تحقیق شده است.
بهعنوان یک توسعهدهنده وابسته به NDA، نمیتوانم بگویم که iOS 7 شامل Motion Effects API است. و نمی توانم بگویم که بلافاصله بعد از انتشار اولین بتا از آن استفاده کردم و عالی است.
:D
در هر صورت، توسعه دهندگان همیشه به شتاب سنج و ژیروسکوپ دسترسی داشتند، به همین دلیل وجود دارد. مزیت در اینجا این است که اپل ... erm ... می تواند به سادگی افکت ها را به هر UIView متصل کند که می تواند هر پارامتری (اندازه، موقعیت و ...) بر اساس چرخش و حرکت دستگاه داشته باشد.
API کامل این افکت ها خیلی وقته که منتشر شده... اگه بتونم در موردش صحبت کنم همینو میگم :)
به یاد دارم که در برخی از نسخه بتا iOS6، نوار لغزنده صدا بسته به شیب دستگاه، انعکاسها را تغییر میداد و در نسخه شارپ چیزی وجود نداشت.
من چند ماهی است که نسخه بتای iOS 7 را دارم، اما اگر درست یادم باشد، این اثر معمولاً در نسخه شارپ iOS 6.1 وجود دارد. اما ممکن است اشتباه کنم، واقعاً نمی توانم آن را هیچ جا تأیید کنم، من iOS 7 را همه جا دارم.
متاسفم که یک مقاله کامل در مورد پس زمینه متحرک می نویسم - با توجه به اینکه فصل خیار است.
واضحتر است که نمیدانید در مورد چیست، این فقط یک پسزمینه متحرک معمولی نیست.
مقاله خوبی پر از اطلاعات خاص.
مقاله عالی زمانی که اپل از آن استفاده کرد، مدت ها منتظر چیزی در مورد اختلاف منظر بودم. می تواند بسیاری از امکانات جدید داشته باشد.
مقاله خوبی
در حال حاضر از ویدیو زیبا به نظر می رسد و نمی توانم تصور کنم که وقتی آن را روی آیفون خود داشته باشم چقدر شگفت انگیز خواهد بود. شکوه!
واقعیت این است که اندروید خیلی وقت است که آن را در قالب یک برنامه کاربردی دارد و هیچکس را خیلی اذیت نمی کند.
روی آیفون 4 کار نمی کند…
می ترسم چراغ قوه در مورد آن چه بگوید، این بخش خوبی از محاسبات اضافی است.
چه چیزی در کلاس فیزیک می تواند خسته کننده باشد؟
بالاخره فیزیک یکی از جالب ترین علومه!!!
مقاله بسیار جالب است، اما برخی چیزها به طور دقیق توضیح داده نشده است. اول از همه، اختلاف منظر بیشتر زاویه بین پاره های خطی است که دو نقطه مشاهده مختلف و جسم را به هم وصل می کند، که همیشه کمتر از زاویه مستقیم است (ویکی در این مورد نسبتاً نادقیق است - تعیین زاویه برای آن دشوار است. زاویه دو خط مستقیم). و سپس به قانون نیوتن: اگر تلفن را شروع به حرکت کنیم، به آن شتاب می دهیم. با این حال، قانون اینرسی اصلاً از شتاب صحبت نمی کند. اصلی که این تابع بر آن استوار است بیشتر از ویژگی های چارچوب های مرجع غیر اینرسی است که نیوتن نیز به آن پرداخته است، اما نه به عنوان بخشی از قانون اول حرکت خود.
و سپس به قانون نیوتن: اگر شروع به حرکت دادن تلفن کنیم، به آن شتاب می دهیم. با این حال، قانون اینرسی اصلاً از شتاب صحبت نمی کند.
من نمی فهمم این استدلال چگونه ثابت می کند که قانون اینرسی نیست.
تا جایی که من به یاد دارم، ژیروسکوپ بر اساس اصل تغییر ممان تکانه کار می کند که نیرو تولید می کند. و این بستگی به لحظه اینرسی دارد. بنابراین، به نظر من، هم قانون اینرسی و هم قانون نیرو برای یک سیستم دوار است.
شتاب سنج را با ژیروسکوپ اشتباه نگیرید. شتاب سنج شتاب جسم ناشی از اینرسی را ثبت می کند. ژیروسکوپ فلایویل است که در یک روتور سه محوره قرار دارد که به همین دلیل این فلایویل در هیچ چرخشی کل دستگاه موقعیت خود را نسبت به زمین تغییر نمی دهد.
خط پایین - شتاب سنج حرکت را درک می کند، در حالی که ژیروسکوپ موقعیت (چرخش) را درک می کند. ;)
با تشکر از توجه شما، اما من واقعا این دو را با هم اشتباه نمی گیرم. اختلاف منظر ربطی به شتاب سنج ندارد، ژیروسکوپ را کنترل می کند.
ژیروسکوپی که توضیح دادید در واقع در آیفون نیست. یک شبکه مکانیکی وجود دارد که با چرخش تغییر شکل می دهد، بنابراین هیچ چیز در آنجا به خودی خود نمی چرخد (به عنوان مثال در ویکی پدیا توضیح داده شده یک ژیروسکوپ کلاسیک اینگونه عمل می کند).
با این حال این تغییر شکل واقعاً ناشی از اینرسی چرخشی است، پس ... من یک جورهایی متوجه نشدم که شما شتاب سنج را با ژیروسکوپ اشتباه می گیرید (اصلاً صحبتی از شتاب سنج نشده است).
من پیشنهاد نمی کنم که اختلاف منظر ربطی به شتاب سنج دارد. ژیروسکوپ بر اساس اصل تغییر تکانه کار نمی کند - این بدان معناست که فقط به شتاب واکنش نشان می دهد (p=m*v). بنابراین تغییر در تکانه (با فرض جرم ثابت) به معنای تغییر در سرعت - شتاب است. با این حال، ژیروسکوپ همچنین به تغییر موقعیت در طول حرکت یکنواخت مستطیل واکنش نشان می دهد. با این حال، اینرسی به بدنه فلایویل اعمال می شود (خواه با یک چرخ کلاسیک سنگین یا یک شبکه نمایش داده شود).
در غیر این صورت، البته با شما موافقم که گفته مارتین هاجک در مورد قانون اول حرکت به نوعی بی دندان است. اگرچه بزرگی شتاب مستقیماً در این قانون ظاهر نمی شود، اما اساساً به این سؤال پاسخ می دهد: چرا شتاب حتی در چارچوب مرجع اینرسی قابل تشخیص است؟
در خاتمه می خواهم به این نکته اشاره کنم که فیزیک زیباست و من هرگز از آن خسته نشدم :D
با این حال، ژیروسکوپ همچنین به تغییر موقعیت در طول حرکت یکنواخت یکنواخت واکنش نشان می دهد.
من اصلا اینو نمیفهمم :) با معادله هر چیزی چطور میتونه به حرکت واکنش نشون بده. حرکت اولیه؟ آیا این با برابری همه چارچوب های مرجع اینرسی در تضاد نیست؟
اما الان بعد از نیمه شب است :D پس شاید دیگر به آن فکر نکنید.
با این تفاوت که اگر جایی در iOS 7 باشد، فقط در صفحه شروع است. من واقعاً در جای دیگری به آن توجه نکرده ام. بنابراین من آن را با مصرف باتری سیاه نمی بینم. به هر حال، استقامت iOS 7 در مقایسه با iOS 6 تقریباً یکسان است، اگر بهتر نباشد (بتا5)
سپس، برای مثال، در تب های سافاری.
حتی در صفحه قفل، تصویر زمینه متحرک با استفاده از این "فناوری" یا هر چیزی که شما آن را می نامید حرکت می کند.
مقاله عالی!
اپلیکیشن aero اکنون رایگان است
دارای اثر فوق الذکر است :)