Როგორ ადაპტირებენ დეველოპერები სლოტებს მობილური მოწყობილობებისთვის
მობილური სლოტი არ არის დესკტოპის შემცირებული ასლი. ის უნდა წაიკითხოს 5-6 ეკრანზე, გაიხსენოს შეხების დროს, იმუშაოს სტაბილურად საბიუჯეტო მოწყობილობებზე, პატივი სცეს ბრაუზერების/OS- ის შეზღუდვებს და არ „ჭამა“ ბატარეა. ქვემოთ მოცემულია სისტემის გეგმა: UX- დან და გრაფიკიდან ქსელამდე, აუდიო და QA.
1) UX თითების ქვეშ და პატარა ეკრანი
ზომები და შეხების ზონები: ინტერაქტიულობა, 44-48 px; კრიტიკული ღილაკები - თითის ზონაში (ქვედა ნახევარი, მარჯვენა/მარცხენა ზღვარი დამოკიდებულია მკლავზე).
Safe areas: აღრიცხულია „shell“, Dynamic Island, curls; შიდა ჩარჩო (safe inset) ზედა ელემენტებისთვის.
ორიენტაცია: პორტრეტი - ბასელინი; ლანდშაფტი - ცალკეული ლეიაუტები/HUD ხელახალი კომპენსაცია. დაბლოკეთ „ხელახლა გადაღება“ მოგების გაანგარიშების დროს.
ვიზუალური იერარქია: სიმბოლოები და მოგება> ფონი და ეფექტები. ტექსტის კონტრასტი, MSDF შრიფტები, აუტლაინი რიცხვებისთვის.
ერთი ხელის მართვა: ძირითადი CTA ქვემოდან; განაკვეთის პანელი და „სპინი“ თითის დაშორებით.
სკიპი და ტურბო: სავალდებულოა; არ დამალოთ. ჩართეთ „ნაკლები მოძრაობა“ მგრძნობიარე ადამიანებისთვის.
ცარიელი მდგომარეობა და რჩევები: მოკლედ, მოქმედების ადგილზე, მოდალებით გადატვირთვის გარეშე.
2) Responsive leyauts და ადაპტირებული ბადე
მაკიაჟი: 4-6 სვეტი + ფიქსირებული „წამყვანები“ Spin/ფსონებისთვის.
ასპექტები: 16:9, 19. 5:9, 20:9 - პოზიციების ცალკეული ქსელები; სკალირება „მოკლე“ მხარეს.
კამერა და ნიღბები: დრამის ფანჯარა პიქსელის დიზაინის უცვლელად; ფონი - გადაჭიმული/კადრირებული მნიშვნელოვანი შინაარსის გარეშე.
ტექსტი: მანქანის ფიტი დიაპაზონში (min/max), სიტყვების გადაცემები, ციფრების/ვალუტის ICU ფორმატები.
3) პროდუქტიულობა: მიზანი - 60 FPS გადახურების გარეშე
ჩარჩოს ბიუჯეტი: 16. 7 ms. ანიმაცია არის დროის წამყვანი და არა „ჩარჩოებში“.
Batching: ატლასი, ჯგუფი მასალებზე/ბლენდინგზე; draw calls შემცირება.
Overdraw: გაჭრა გამჭვირვალე „ფურცლები“, გამოიყენეთ ნიღბები/სტენსილები.
მეხსიერება: ობიექტების აუზი, ნაწილაკების გადაადგილება; ტექსტურები ASTC/ETC2/BCn + fallback.
LOD: Budget-GPU- ზე მძიმე shaders- ის გამორთვა/პოსტ - ეფექტები; გამარტივებული ფონები.
GC spikes: თავიდან აიცილოთ ალოკაცია ანიმაციურ ციკლებში; ემიტერების წინასწარი დატვირთვა/წინამორბედი.
ვიდეო განაკვეთები: მოკლე ციკლები, დაბალი ბიტრაიტი, გაჩერება დასაკეცი/ფონის მუშაობის დროს.
სითბო და ბატარეა: შეამცირეთ მძიმე სცენების ხანგრძლივობა, შეზღუდეთ ფონის ტაიმერების სიხშირე.
4) გრაფიკა და ასეტები
ატლასი: 2048-4096 px, hash-busting (cache-busting), ჯგუფურად UI/FX ცალკე.
ტექსტურები: შეკუმშული ფორმატები (ASTC iOS/ახალი Android; ETC2 Android- ისთვის; BCn - დესკტოპი/WebGL2); WebP/PNG, როგორც რეზერვი.
შრიფტები: MSDF/SDF + სტილში (glow/outline), მრავალი PNG კომპლექტის ნაცვლად.
ნაწილაკები: additive ბლენდინგი, მოკლე ცხოვრება, ტყვია.
პოსტ ეფექტები: half/quarter-res bloom, რბილი ვინგეტი; გამორთვა სუსტი მოწყობილობებზე.
დასარტყამი ფურცლები: pre-baked და „თხელი“, ზედმეტი ცარიელი გარეშე; პიქსელის ჭურვი სკროლისთვის.
5) აუდიო, ვიბრაცია და სისტემის შეზღუდვები
ავტოპლეის პოლიტიკოსები: ხმა იწყება მხოლოდ ჟესტით; აჩვენეთ გასაგები „ხმა/დუმილი“ ნისლი.
მიქშერი: მომხმარებლის ხმა/მედია; ერთდროული SFX ლიმიტი.
Haptics: მოკლე ვიბრაციული ნიმუშები დრამის ფეხებზე/დიდი მოგება; ვარიანტი „გამორთვა“.
ფონის რეჟიმი: ანიმაციის/აუდიოს პაუზა ეკრანზე გასვლის დროს.
6) ქსელი და ოფლაინ სტაბილურობა
კრიტიკული გზა: 'spin '/' bonus' - მოკლე RPC გარე დამოკიდებულების გარეშე; ექსპონენციალური ჭრილობები ჯიტერთან.
Idempotence: write ოპერაციების გასაღები (განაკვეთი/გადახდა) - განმეორება - იგივე შედეგი.
Service Worker (ვებში): casset, მანიფესტი მოკლე TTL- ით, გაათბეთ Events- ის წინ.
პლეიშოლდერები: skeleton ეკრანები, UI მოვლენების ადგილობრივი ეტაპი, აშკარა სტატუსები „ქსელი მიუწვდომელია“.
7) პლატფორმის განსხვავებები და კონტეინერები
iOS Safari: მკაცრი ავტომობილი, WebGL მეხსიერება, ტაიმერების ფონის შეზღუდვები.
Android Chrome/WebView: უფრო მეტი GPU/დრაივერების ვარიაციები - Mali/Adreno- ს ტესტირება.
PWA: სახლის ეკრანი, ოფლაინ ქეში, მაგრამ push/გადახდები შეზღუდულია წესებით.
Nation/Unity: WebGL ბანდლა უფრო მძიმეა, მაგრამ ერთი კოდი iOS/Android; Addressables, per პლატფორმის ტექსტურის შეკუმშვა.
WebView პროგრამებში: გაითვალისწინეთ ნაკადის პოლიტიკა, კონფიდენციალურობა და RG მოთხოვნები.
8) ლოკალიზაცია და წვდომა
ენები: ხაზების სიგრძე, მესამე მხარის სკრიპტები, თარიღების/ვალუტის ფორმატები; ICU შეტყობინებები.
კონტრასტი და ზომა: მაღალი კონტრასტის რეჟიმი, მასშტაბური შრიფტები, კრიტიკული ტექსტი - გაჯერების შეცვლის გარეშე.
ნაკლები მოძრაობა: პარალექსის/კისრის გამორთვა; ალტერნატიული ეფექტები.
9) პატივისცემის თამაში და პატიოსნება
RG ინსტრუმენტები: სწრაფი წვდომა limits/Time out/country; „მშვიდი რეჟიმი“ ღამით.
შედეგის პატიოსნება: შედეგის გაანგარიშება სერვერზე ანიმაციამდე; UX არ ახდენს გავლენას დაკარგვის შანსზე.
იურისდიქცია: მანქანის სპინი/buy-feature/სიჩქარე - რეგიონების მიხედვით ფიჩფლაგების საშუალებით.
10) QA მატრიცა და დაკვირვება
მოწყობილობების მატრიცა: 8-12 რეფერენდუმი (iPhone base/Pro, Budget/mid Android ერთად Mali/Adreno, ტაბლეტები).
პროფილინგი: FPS, draw calls, GPU/CPU დრო, მეხსიერება/VRAM, stutters/GC.
Crash/ANR: მონიტორინგი, seed/step პრობლემური რაუნდის რეპლიკები.
Dashboards: First Playable, p95 ქსელი, უკანა შეცდომა, ტემპერატურა (თუ ხელმისაწვდომია), retenshne D1/D7, კონვერტაცია „ხმა ჩართულია“, „სკიპის“ წილი.
11) A/B ექსპერიმენტები მობილური
ჰიპოთეზები: Spin პოზიცია, CTA ზომა, დრამის გაჩერებების სიგრძე, ტუტორიალის შეკვეთა, „რბილი“ vs „მკაცრი“ ბონუს-ინტრო.
Guardrails: crash/ANR, p95 ქსელი, საჩივრები; დეგრადაციის დროს - ფიჩეფლაგის ავტომატური გადაზიდვა.
სეგმენტი: მოწყობილობების საშუალებით/GPU/ტრაფიკის არხი - ეფექტები შეიძლება განსხვავდებოდეს.
12) ანტი-ნიმუშები (რაც არ უნდა გაკეთდეს)
კოპირება desctop 1:1: მცირე ტექსტი, მიუწვდომელი ღილაკები.
უზარმაზარი ვიდეო/ფონის ეფექტები ყველა მოწყობილობაზე - გადახურება და FPS წვეთი.
შემთხვევითი GC მოგების გაანგარიშებისას: ალოკაცია ანიმაციის ტიკებში.
მყარი ენები კლიენტში: ვარდნა სერვერისგან ახალი მნიშვნელობით.
ალბათობის დემო-ბუსტები - დარტყმა ნდობასა და შესაბამისობაში.
ქსელის მოლოდინი feedback- ის გარეშე: „მკვდარი“ ღილაკები, არ არსებობს სტატუსები.
13) მინი რეცეპტები
სწრაფი პორტრეტი
ქვედა პანელი: Spin (კანონი) + Bet (მარცხნივ), ცენტრი არის მრიცხველები.
ფიქტიური დრამის ფანჯარა, ფონი - პარალელური 5-10%.
დიდი მოგება: MSDF ნომრები + glow, ღილაკი „გამოტოვეთ“.
მოგების ეკონომიური ეფექტი
Scale-bounce სათაური, additive კონფეტი - 1 c, half-res bloom.
ვიბრო მოკლეა (10-20 ms), ხმა ერთი ნაზავია მარკერებით.
სტაბილური WebGL ბიუჯეტის მოწყობილობებზე
ერთი UI + ერთი სიმბოლოების ატლასი; პოსტის ეფექტები გამორთულია; 30 FPS „power-save“ უმოქმედობით.
14) მობილური ადაპტაციის დიდი შემოწმების სია
UX/Leyaut
- Touch ზონები - 44-48 px, მთავარი CTA თითის ზონაში
- Safe areas/„ shels “გათვალისწინებულია; დამუშავებულია პორტრეტი/ლანდშაფტი
- Skip/turbo/ნაკლები მოძრაობა ხელმისაწვდომია
გრაფიკა/პერფი
- 60 FPS (რეფერენდუმი), draw calls/overdraw ბიუჯეტებში
- ტექსტურის შეკუმშვა (ASTC/ETC2/BCn) + fallback
- LOD/მძიმე ეფექტების გამორთვა, ნაწილაკების ტყვია
- Bundle და First Playable მიზნებისათვის
ქსელი/საიმედოობა
- Idempotent write ოპერაციები, ჯიტერი
- Service Worker/cash სტრატეგია (ვებში)
- ოფლაინ/შეცდომების აშკარა სტატუსი
აუდიო/ვიბრო
- ავტომობილი მხოლოდ ჟესტის, მიქსერის და SFX ლიმიტის შემდეგ
- Haptics ვარიანტით „გამონაყარი“, პაუზა background- ში
შესაბამისობა/RG
- იურისდიქციის დროშები, გულწრფელი შედეგი სერვერზე
- სწრაფი წვდომა ლიმიტებზე/პაუზებზე/თვითშეფასებაზე
QA/მონიტორინგი
- მოწყობილობის მატრიცა დასრულებულია; პროფილები GPU/CPU/მეხსიერება
- დაშბორდები p95 ქსელი/FPS/შეცდომები/კრაში
- seed/step reples ticets
სლოტის ადაპტაცია mobile- ზე არის UX- ის მიერ წაკითხული ბალანსი, ფრთხილად გრაფიკა, სტაბილური ქსელი და ეთიკა. გუნდები იმარჯვებენ, როდესაც ეკრანს თითების ქვეშ და safe areas ქმნიან, ინახავს 60 FPS და მსუბუქი ბანდლი, ითვალისწინებს iOS/Android- ის პოლიტიკას, ტესტირებას რეალურ მოწყობილობებზე და მოიცავს ფიჩქებს დროშებით. ასე რომ, ცრემლები ნებისმიერ სმარტფონზე რჩება ლამაზი, სწრაფი და გულწრფელი.