
Half-Life 2 ახლა ბრაუზერშიც ითამაშება — ფანმა ვებ-პორტი გამოაქვეყნა
დეველოპერმა, რომელიც slqnt-ის სახელით მოღვაწეობს, Half-Life 2-ის ბრაუზერული პორტი გამოაქვეყნა: 2004 წლის კლასიკა Emscripten-ისა და WebGL2-ის მეშვეობით მუშაობს, ასეტები რუკებად იტვირთება, სახის ანიმაცია კი სტაბილურობისთვის გამორთულია.
Half-Life 2 — ბრაუზერის ტაბში
Half-Life 2-ის ფანის მიერ შექმნილი ვებ-პორტი ახლა უშუალოდ ბრაუზერში მუშაობს. პროექტი დეველოპერმა, რომელიც slqnt-ის სახელით არის ცნობილი, გამოაქვეყნა — Valve-ის 2004 წლის შუტერი Emscripten-ისა და WebGL2-ის მეშვეობით ეშვება, ავტორმა კი დეტალური ტექსტიც გამოაქვეყნა იმის შესახებ, თუ როგორ ააწყო პორტი და რაზე მოუწია უარის თქმა.
პორტზე ავტორთან ერთად მცირე ჯგუფი მუშაობდა — 98006, weliveinhell, bread და bog. პირველი ტიზერი 2026 წლის 20 მარტს გამოქვეყნდა; მაშინ ვერსია ჯერ კიდევ ხარვეზებით იყო სავსე, ხმოვანი ხაზები აკლდა და სახის ანიმაციის პრობლემებიც ჰქონდა, რომლებიც მოგვიანებით სისტემის სრულად გამორთვით მოგვარდა.
ღია კოდის ჯაჭვზე აგებული პროექტი
სამუშაო weliveinhell-ის Portal-ის ბრაუზერული პორტიდან დაიწყო, რომელიც თავად nillerusr-ის source-engine რეპოზიტორიის ფორკია — 2020 წელს გაჟონილი Team Fortress 2-ის Source ძრავის მოდიფიცირებული ვერსია. ამ კოდს უკვე ჰქონდა ToGLES რენდერინგის რეჟიმი: OpenGL ES-ის გამოძახებებს Emscripten WebGL2-ად გარდაქმნის, ამიტომ Half-Life 2-ისთვის რენდერინგზე მუშაობა თითქმის არ დასჭირდა.
რადგან ეს ძრავა Half-Life 2-ის 20 წლის იუბილესთან გამოშვებულ ვერსიაზე ადრეა, მისი ასეტები არ მუშაობდა. ავტორმა Steam-ზე steam_legacy-ის შტოზე გადართვით თავსებადი მონაცემები მოიპოვა. ასეტების ჩატვირთვამ ცალკე პროცესი მოითხოვა: ძრავა ისე შეიცვალა, რომ ყოველი ასეტის მოთხოვნა ლოგირდებოდა, სკრიპტი ამ ლოგებს აანალიზებდა და ფაილებს .data არქივებად ალაგებდა — თითო რუკაზე ერთი. არსებული ჩანკების სკრიპტი Linux-ისთვის იყო დაწერილი, ამიტომ Windows-ზე მორგება და Half-Life 2-ის ყველა VPK-ის გახსნა მოუწია.
რა შეეწირა და რა გამოსწორდა
Half-Life 2-ის სახის ანიმაციის სისტემა, ორიგინალის ერთ-ერთი მთავარი მიღწევა, იმდენ პრობლემას იწვევდა, რომ სტაბილურობისთვის მთლიანად გამორთეს. გამოსწორებული ხარვეზების სია გრძელია: შენახვა და ჩატვირთვა Emscripten-ის IDBFS-თან მოუწია დაკავშირება; ბატარეები, სამედიცინო ყუთები და კედელზე დამაგრებული სამკურნალო ყუთები საერთოდ არ მუშაობდა; როცა Alyx გრავიტაციულ იარაღს გადმოგცემდა, ის ინვენტარს არ ემატებოდა; ლაითმაპების გამო რუკები ზოგჯერ შემთხვევით ფერებში იხატებოდა; ფანარი ცარიელ ტექსტურას იყენებდა; NPC-ები შემთხვევით ცვიოდნენ და იხოცებოდნენ; ჰედკრაბები და ზომბები ზიანს არ აყენებდნენ; წყალი სრულიად შავად ჩანდა. აქედან ნაწილი — სამკურნალო ყუთები და NPC-ების დაცემა — კონტრიბუტორმა 98-მა გამოასწორა.
შემდეგ მცირე მოხერხებულობის ცვლილებები მოჰყვა, მათ შორის crouch-ის C ღილაკზე მიბმა, რადგან Ctrl ბრაუზერის მალსახმობებს ააქტიურებს და თამაშს აფერხებს.
რა იგეგმება შემდეგ
ავტორის თქმით, დასვენების შემდეგ Half-Life 2-ის ორ ეპიზოდზე მუშაობას განაგრძობს. ჯერჯერობით უცნობია, გავრცელდება თუ არა იგივე მიდგომა Source-ის ძრავის სხვა თამაშებზე.
SiTech — AI-გაძლიერებული ვებ დეველოპმენტი
ვქმნით სწრაფ, თანამედროვე ვებსაიტებს და AI-ს ვაერთიანებთ ქართული ბიზნესებისთვის. გაქვთ პროექტი ან კითხვა? სიამოვნებით დაგეხმარებით.