নামের স্ট্রিং
XR_ANDROID_eye_tracking
এক্সটেনশনের ধরণ
ইনস্ট্যান্স এক্সটেনশন
নিবন্ধিত এক্সটেনশন নম্বর
৪৫৭
সংশোধন
১
এক্সটেনশন এবং সংস্করণ নির্ভরতা
শেষ সংশোধিত তারিখ
২০২৫-০১-১৭
আইপি স্ট্যাটাস
কোনও পরিচিত আইপি দাবি নেই।
অবদানকারীরা
স্পেন্সার কুইন, গুগল
জ্যারেড ফাইন্ডার, গুগল
লেভানা চেন, গুগল
কেনি ভার্কেমার, গুগল
প্রশান্তি গুরুমূর্তি, গুগল
নিহাভ জৈন, গুগল
সংক্ষিপ্ত বিবরণ
এই এক্সটেনশনটি অ্যাপ্লিকেশনগুলিকে ব্যবহারকারীর চোখের অবস্থান এবং ওরিয়েন্টেশন, সেইসাথে চোখের ট্র্যাকিং অবস্থা পেতে সক্ষম করে।
আই ট্র্যাকিং ডেটা দুটি মোডে সরবরাহ করা হয়: মোটা এবং সূক্ষ্ম। মোটা ট্র্যাকিং ব্যবহারকারীর চোখের একটি মোটা অনুমান প্রদান করে, যেখানে সূক্ষ্ম ট্র্যাকিং আরও সঠিক অনুমান প্রদান করে। মোটা ট্র্যাকিং এমন অ্যাপ্লিকেশনগুলির জন্য বোঝানো হয় যারা একটি মৌলিক অবতারের মতো উপস্থাপনা প্রদান করতে চায়, অন্যদিকে সূক্ষ্ম ট্র্যাকিং আরও সুনির্দিষ্ট অ্যাপ্লিকেশনগুলির জন্য বোঝানো হয়।
ইন্টারঅ্যাকশনের জন্য, XR_EXT_eye_gaze_interaction ব্যবহার করা উচিত ।
সিস্টেমের ক্ষমতা পরীক্ষা করুন
XrSystemEyeTrackingPropertiesANDROID কাঠামোটি নিম্নরূপ সংজ্ঞায়িত করা হয়েছে:
typedef struct XrSystemEyeTrackingPropertiesANDROID {
XrStructureType type;
void* next;
XrBool32 supportsEyeTracking;
} XrSystemEyeTrackingPropertiesANDROID;
সদস্যদের বিবরণ
-
typeহল এই কাঠামোরXrStructureType। -
nextহলNULLঅথবা একটি স্ট্রাকচার চেইনের পরবর্তী স্ট্রাকচারের দিকে নির্দেশক। কোর OpenXR বা এই এক্সটেনশনে এই ধরনের কোনও স্ট্রাকচার সংজ্ঞায়িত করা হয়নি। -
supportsEyeTrackingহল একটিXrBool32, যা নির্দেশ করে যে বর্তমান সিস্টেমটি চোখের ট্র্যাকিং সমর্থন করে কিনা।
একটি অ্যাপ্লিকেশন xrGetSystemProperties কল করার সময় XrSystemEyeTrackingPropertiesANDROID কাঠামোকে XrSystemProperties এর সাথে চেইন করে সিস্টেমটি আই ট্র্যাকিং করতে সক্ষম কিনা তা পরীক্ষা করতে পারে । যদি supportsEyeTracking XR_FALSE ফেরত দেয়, তাহলে একটি অ্যাপ্লিকেশন xrCreateEyeTrackerANDROID থেকে XR_ERROR_FEATURE_UNSUPPORTED পাবে।
বৈধ ব্যবহার (অন্তর্নিহিত)
-
XrSystemEyeTrackingPropertiesANDROIDব্যবহার করার আগেXR_ANDROID_eye_trackingএক্সটেনশনটি সক্রিয় করতে হবে । -
typeঅবশ্যইXR_TYPE_SYSTEM_EYE_TRACKING_PROPERTIES_ANDROIDহতে হবে -
nextঅবশ্যইNULLহতে হবে অথবা স্ট্রাকচার চেইনে পরবর্তী স্ট্রাকচারের জন্য একটি বৈধ পয়েন্টার হতে হবে।
একটি আই ট্র্যাকার হ্যান্ডেল তৈরি করুন
XR_DEFINE_HANDLE(XrEyeTrackerANDROID)
XrEyeTrackerANDROID হ্যান্ডেলটি চোখ ট্র্যাক করার জন্য একটি আই ট্র্যাকার প্রতিনিধিত্ব করে এবং ব্যবহারকারী কী দেখছেন তা সঠিকভাবে ম্যাপ করে।
আই ট্র্যাকিং ডেটা সংবেদনশীল ব্যক্তিগত তথ্য হতে পারে এবং ব্যক্তিগত গোপনীয়তা এবং অখণ্ডতার সাথে ঘনিষ্ঠভাবে জড়িত। এটি দৃঢ়ভাবে সুপারিশ করা হয় যে আই ট্র্যাকিং ডেটা সংরক্ষণ বা স্থানান্তরকারী অ্যাপ্লিকেশনগুলি সর্বদা ব্যবহারকারীর কাছ থেকে এটি করার জন্য সক্রিয় এবং নির্দিষ্ট গ্রহণযোগ্যতার জন্য অনুরোধ করে।
এই এক্সটেনশনের অন্যান্য ফাংশন ব্যবহার করে চোখের ট্র্যাকিং ডেটা অ্যাক্সেস করতে এই হ্যান্ডেলটি ব্যবহার করা যেতে পারে ।
আই ট্র্যাকিং দৃশ্যে চোখের ভঙ্গি এবং স্থিতির প্রতিনিধিত্ব প্রদান করে।
xrCreateEyeTrackerANDROID ফাংশনটি নিম্নরূপ সংজ্ঞায়িত করা হয়েছে:
XrResult xrCreateEyeTrackerANDROID(
XrSession session,
const XrEyeTrackerCreateInfoANDROID* createInfo,
XrEyeTrackerANDROID* eyeTracker);
প্যারামিটার বর্ণনা
-
sessionহল একটিXrSessionহ্যান্ডেল যেখানে চোখের ট্র্যাকিং সক্রিয় থাকবে। -
createInfoহলXrEyeTrackerCreateInfoANDROIDযা চোখের ট্র্যাকিং নির্দিষ্ট করতে ব্যবহৃত হয়। -
eyeTrackerহল ফিরে আসাXrEyeTrackerANDROIDহ্যান্ডেল।
একটি অ্যাপ্লিকেশন xrCreateEyeTrackerANDROID ফাংশন ব্যবহার করে একটি XrEyeTrackerANDROID হ্যান্ডেল তৈরি করতে পারে ।
যদি সিস্টেমটি চোখের ট্র্যাকিং সমর্থন না করে, তাহলে xrCreateEyeTrackerANDROID থেকে XR_ERROR_FEATURE_UNSUPPORTED ফেরত পাঠানো হবে।
বৈধ ব্যবহার (অন্তর্নিহিত)
-
xrCreateEyeTrackerANDROIDকল করার আগেXR_ANDROID_eye_trackingএক্সটেনশনটি সক্রিয় করতে হবে । -
sessionঅবশ্যই একটি বৈধXrSessionহ্যান্ডেল হতে হবে -
createInfoঅবশ্যই একটি বৈধXrEyeTrackerCreateInfoANDROIDকাঠামোর নির্দেশক হতে হবে -
eyeTrackerঅবশ্যই একটিXrEyeTrackerANDROIDহ্যান্ডেলের দিকে নির্দেশক হতে হবে
রিটার্ন কোড
-
XR_SUCCESS -
XR_SESSION_LOSS_PENDING
-
XR_ERROR_FUNCTION_UNSUPPORTED -
XR_ERROR_VALIDATION_FAILURE -
XR_ERROR_RUNTIME_FAILURE -
XR_ERROR_HANDLE_INVALID -
XR_ERROR_INSTANCE_LOST -
XR_ERROR_SESSION_LOST -
XR_ERROR_OUT_OF_MEMORY -
XR_ERROR_LIMIT_REACHED -
XR_ERROR_FEATURE_UNSUPPORTED
XrEyeTrackerCreateInfoANDROID কাঠামোটি নিম্নরূপ সংজ্ঞায়িত করা হয়েছে:
typedef struct XrEyeTrackerCreateInfoANDROID {
XrStructureType type;
void* next;
} XrEyeTrackerCreateInfoANDROID;
সদস্যদের বিবরণ
-
typeহল এই কাঠামোরXrStructureType। -
nextহলNULLঅথবা একটি স্ট্রাকচার চেইনের পরবর্তী স্ট্রাকচারের দিকে নির্দেশক। কোর OpenXR বা এই এক্সটেনশনে এই ধরনের কোনও স্ট্রাকচার সংজ্ঞায়িত করা হয়নি।
XrEyeTrackerCreateInfoANDROID কাঠামোটি XrEyeTrackerANDROID হ্যান্ডেল তৈরির তথ্য বর্ণনা করে।
বৈধ ব্যবহার (অন্তর্নিহিত)
-
XrEyeTrackerCreateInfoANDROIDব্যবহার করার আগেXR_ANDROID_eye_trackingএক্সটেনশনটি সক্রিয় করতে হবে । -
typeঅবশ্যইXR_TYPE_EYE_TRACKER_CREATE_INFO_ANDROIDহতে হবে -
nextঅবশ্যইNULLহতে হবে অথবা স্ট্রাকচার চেইনে পরবর্তী স্ট্রাকচারের জন্য একটি বৈধ পয়েন্টার হতে হবে।
xrDestroyEyeTrackerANDROID ফাংশনটি নিম্নরূপ সংজ্ঞায়িত করা হয়েছে:
XrResult xrDestroyEyeTrackerANDROID(
XrEyeTrackerANDROID eyeTracker);
প্যারামিটার বর্ণনা
-
eyeTrackerহল একটিXrEyeTrackerANDROIDযা পূর্বেxrCreateEyeTrackerANDROIDদ্বারা তৈরি করা হয়েছিল।
xrDestroyEyeTrackerANDROID ফাংশনটি চোখের ট্র্যাকিং অভিজ্ঞতা সম্পন্ন করার পরে eyeTracker এবং অন্তর্নিহিত রিসোর্সগুলি প্রকাশ করে।
বৈধ ব্যবহার (অন্তর্নিহিত)
-
xrDestroyEyeTrackerANDROIDকল করার আগেXR_ANDROID_eye_trackingএক্সটেনশনটি সক্রিয় করতে হবে । -
eyeTrackerঅবশ্যই একটি বৈধXrEyeTrackerANDROIDহ্যান্ডেল হতে হবে।
থ্রেড সুরক্ষা
-
eyeTrackerএবং যেকোনো চাইল্ড হ্যান্ডেলের অ্যাক্সেস অবশ্যই বাহ্যিকভাবে সিঙ্ক্রোনাইজ করা উচিত
রিটার্ন কোড
-
XR_SUCCESS
-
XR_ERROR_FUNCTION_UNSUPPORTED -
XR_ERROR_HANDLE_INVALID
চোখের তথ্য পাওয়া
xrGetCoarseTrackingEyesInfoANDROID ফাংশনটি নিম্নরূপ সংজ্ঞায়িত করা হয়েছে:
XrResult xrGetCoarseTrackingEyesInfoANDROID(
XrEyeTrackerANDROID eyeTracker,
const XrEyesGetInfoANDROID* getInfo,
XrEyesANDROID* eyesOutput);
প্যারামিটার বর্ণনা
-
eyeTrackerহল একটিXrEyeTrackerANDROIDযা পূর্বেxrCreateEyeTrackerANDROIDদ্বারা তৈরি করা হয়েছিল। -
getInfoহলXrEyesGetInfoANDROIDএর একটি পয়েন্টার যা কোন আউটপুট প্রয়োজন তা নির্দিষ্ট করতে ব্যবহৃত হয়। -
infoOutputহলXrEyesANDROIDএর একটি পয়েন্টার যেখানে ভঙ্গি এবং অবস্থা সহ ফিরে আসা চোখের তথ্য থাকে।
xrGetCoarseTrackingEyesInfoANDROID ফাংশনটি চোখের অবস্থা এবং ভঙ্গির তথ্য এমনভাবে সংগ্রহ করে যা ব্যবহারকারীর গোপনীয়তা রক্ষা করে।
যদি অ্যাপ্লিকেশনটিতে android.permission.EYE_TRACKING_COARSE অনুমতি না থাকে, তাহলে রানটাইম অবশ্যই XR_ERROR_PERMISSION_INSUFFICIENT রিটার্ন করবে।
XrEyesGetInfoANDROID::time , XrEyesGetInfoANDROID::baseSpace ব্যবহার করে xrGetCoarseTrackingEyesInfoANDROID এ কল করার সময় চোখের তথ্য সমাধান করা হয়েছে এবং বেস স্পেসের সাথে সাপেক্ষে।
যেকোনো সময় চোখের অবস্থান এবং দিক উভয়ই ট্র্যাক করা হয় বা ট্র্যাক করা হয় না। এর অর্থ হল অ্যাপ্লিকেশনগুলি আশা করতে পারে যে XR_SPACE_LOCATION_POSITION_TRACKED_BIT এবং XR_SPACE_LOCATION_ORIENTATION_TRACKED_BIT উভয়ই সরবরাহকৃত XrEyesANDROID::eyes এ সেট বা সাফ করা হবে এবং XrEyesANDROID::mode ট্র্যাকিং অবস্থা নির্দেশ করবে।
বৈধ ব্যবহার (অন্তর্নিহিত)
-
xrGetCoarseTrackingEyesInfoANDROIDকল করার আগেXR_ANDROID_eye_trackingএক্সটেনশনটি সক্রিয় করতে হবে । -
eyeTrackerঅবশ্যই একটি বৈধXrEyeTrackerANDROIDহ্যান্ডেল হতে হবে -
getInfoঅবশ্যই একটি বৈধXrEyesGetInfoANDROIDকাঠামোর নির্দেশক হতে হবে -
eyesOutputঅবশ্যই একটিXrEyesANDROIDকাঠামোর নির্দেশক হতে হবে
রিটার্ন কোড
-
XR_SUCCESS -
XR_SESSION_LOSS_PENDING
-
XR_ERROR_FUNCTION_UNSUPPORTED -
XR_ERROR_VALIDATION_FAILURE -
XR_ERROR_RUNTIME_FAILURE -
XR_ERROR_HANDLE_INVALID -
XR_ERROR_INSTANCE_LOST -
XR_ERROR_SESSION_LOST -
XR_ERROR_OUT_OF_MEMORY -
XR_ERROR_LIMIT_REACHED -
XR_ERROR_TIME_INVALID -
XR_ERROR_PERMISSION_INSUFFICIENT
xrGetFineTrackingEyesInfoANDROID ফাংশনটি নিম্নরূপ সংজ্ঞায়িত করা হয়েছে:
XrResult xrGetFineTrackingEyesInfoANDROID(
XrEyeTrackerANDROID eyeTracker,
const XrEyesGetInfoANDROID* getInfo,
XrEyesANDROID* eyesOutput);
প্যারামিটার বর্ণনা
-
eyeTrackerহল একটিXrEyeTrackerANDROIDযা পূর্বেxrCreateEyeTrackerANDROIDদ্বারা তৈরি করা হয়েছিল। -
getInfoহলXrEyesGetInfoANDROIDএর একটি পয়েন্টার যা কোন আউটপুট প্রয়োজন তা নির্দিষ্ট করতে ব্যবহৃত হয়। -
infoOutputহলXrEyesANDROIDদিকে নির্দেশক একটি পয়েন্টার যেখানে চোখের ভঙ্গি এবং অবস্থা সহ তথ্য ফেরত দেওয়া হয়।xrGetFineTrackingEyesInfoANDROIDফাংশনটিxrGetCoarseTrackingEyesInfoANDROIDচেয়ে উচ্চতর নির্ভুলতার সাথে চোখের অবস্থা এবং পোজের তথ্য গ্রহণ করে।
যদি অ্যাপ্লিকেশনটিতে android.permission.EYE_TRACKING_FINE অনুমতি না থাকে, তাহলে রানটাইম অবশ্যই XR_ERROR_PERMISSION_INSUFFICIENT রিটার্ন করবে।
XrEyesGetInfoANDROID::time , XrEyesGetInfoANDROID::baseSpace ব্যবহার করে xrGetFineTrackingEyesInfoANDROID এ কল করার সময় চোখের তথ্য সমাধান করা হয়েছে এবং বেস স্পেসের সাথে সাপেক্ষে।
যেকোনো সময় চোখের অবস্থান এবং দিক উভয়ই ট্র্যাক করা হয় বা ট্র্যাক করা হয় না। এর অর্থ হল অ্যাপ্লিকেশনগুলি আশা করতে পারে যে XR_SPACE_LOCATION_POSITION_TRACKED_BIT এবং XR_SPACE_LOCATION_ORIENTATION_TRACKED_BIT উভয়ই সরবরাহকৃত XrEyesANDROID::eyes এ সেট বা সাফ করা হবে এবং XrEyesANDROID::mode ট্র্যাকিং অবস্থা নির্দেশ করবে।
বৈধ ব্যবহার (অন্তর্নিহিত)
-
xrGetFineTrackingEyesInfoANDROIDকল করার আগেXR_ANDROID_eye_trackingএক্সটেনশনটি সক্রিয় করতে হবে । -
eyeTrackerঅবশ্যই একটি বৈধXrEyeTrackerANDROIDহ্যান্ডেল হতে হবে -
getInfoঅবশ্যই একটি বৈধXrEyesGetInfoANDROIDকাঠামোর নির্দেশক হতে হবে -
eyesOutputঅবশ্যই একটিXrEyesANDROIDকাঠামোর নির্দেশক হতে হবে
রিটার্ন কোড
-
XR_SUCCESS -
XR_SESSION_LOSS_PENDING
-
XR_ERROR_FUNCTION_UNSUPPORTED -
XR_ERROR_VALIDATION_FAILURE -
XR_ERROR_RUNTIME_FAILURE -
XR_ERROR_HANDLE_INVALID -
XR_ERROR_INSTANCE_LOST -
XR_ERROR_SESSION_LOST -
XR_ERROR_OUT_OF_MEMORY -
XR_ERROR_LIMIT_REACHED -
XR_ERROR_TIME_INVALID -
XR_ERROR_PERMISSION_INSUFFICIENT
XrEyesGetInfoANDROID কাঠামোতে চোখের ভঙ্গি এবং অবস্থা পুনরুদ্ধারের জন্য প্রয়োজনীয় তথ্য রয়েছে।
typedef struct XrEyesGetInfoANDROID {
XrStructureType type;
void* next;
XrTime time;
XrSpace baseSpace;
} XrEyesGetInfoANDROID;
সদস্যদের বিবরণ
-
typeহল এই কাঠামোরXrStructureType। -
nextহলNULLঅথবা একটি স্ট্রাকচার চেইনের পরবর্তী স্ট্রাকচারের দিকে নির্দেশক। কোর OpenXR বা এই এক্সটেনশনে এই ধরনের কোনও স্ট্রাকচার সংজ্ঞায়িত করা হয়নি। -
timeহল সেইXrTimeযেখানেbaseSpaceএর সাপেক্ষে স্থানাঙ্কগুলি মূল্যায়ন করা হয়। -
baseSpaceএর চোখের ভঙ্গি এইXrSpaceসাথেtimeহবে।
বৈধ ব্যবহার (অন্তর্নিহিত)
-
XrEyesGetInfoANDROIDব্যবহার করার আগেXR_ANDROID_eye_trackingএক্সটেনশনটি সক্রিয় করতে হবে । -
typeঅবশ্যইXR_TYPE_EYES_GET_INFO_ANDROIDহতে হবে -
nextঅবশ্যইNULLহতে হবে অথবা স্ট্রাকচার চেইনে পরবর্তী স্ট্রাকচারের জন্য একটি বৈধ পয়েন্টার হতে হবে। -
baseSpaceঅবশ্যই একটি বৈধXrSpaceহ্যান্ডেল হতে হবে
XrEyesANDROID গঠনে ট্র্যাক করা চোখের তথ্য রয়েছে।
typedef struct XrEyesANDROID {
XrStructureType type;
void* next;
XrEyeANDROID eyes[XR_EYE_MAX_ANDROID];
XrEyeTrackingModeANDROID mode;
} XrEyesANDROID;
সদস্যদের বিবরণ
-
typeহল এই কাঠামোরXrStructureType। -
nextহলNULLঅথবা একটি স্ট্রাকচার চেইনের পরবর্তী স্ট্রাকচারের দিকে নির্দেশক। কোর OpenXR বা এই এক্সটেনশনে এই ধরনের কোনও স্ট্রাকচার সংজ্ঞায়িত করা হয়নি। -
eyesহলXrEyeANDROIDএর একটি অ্যারে যাXrEyeIndexANDROIDদ্বারা সূচিত করা হয়েছে, বাম এবং ডান চোখের জন্য। -
modeহলXrEyeTrackingModeANDROIDযা নির্দেশ করে যে চোখগুলি ট্র্যাক করছে কিনা এবং কোনটি।
বৈধ ব্যবহার (অন্তর্নিহিত)
-
XrEyesANDROIDব্যবহার করার আগেXR_ANDROID_eye_trackingএক্সটেনশনটি সক্রিয় করতে হবে । -
typeঅবশ্যইXR_TYPE_EYES_ANDROIDহতে হবে -
nextঅবশ্যইNULLহতে হবে অথবা স্ট্রাকচার চেইনে পরবর্তী স্ট্রাকচারের জন্য একটি বৈধ পয়েন্টার হতে হবে। -
eyesযেকোনো উপাদান অবশ্যই একটি বৈধXrEyeANDROIDকাঠামো হতে হবে -
modeঅবশ্যই একটি বৈধXrEyeTrackingModeANDROIDমান হতে হবে
XrEyeANDROID গঠন চোখের অবস্থা, অবস্থান এবং অভিযোজন বর্ণনা করে।
typedef struct XrEyeANDROID {
XrEyeStateANDROID eyeState;
XrPosef eyePose;
} XrEyeANDROID;
সদস্যদের বিবরণ
-
eyeStateহল চোখেরXrEyeStateANDROID। -
poseহলো একটিXrPosefসংশ্লিষ্টXrEyesGetInfoANDROID::baseSpaceএর রেফারেন্স ফ্রেমের মধ্যে একটি চোখের উৎপত্তিস্থলের অবস্থান এবং অভিযোজন নির্ধারণ করে। এখানে একটি পরিচয় অভিযোজন একটি স্থানাঙ্ক অক্ষকে প্রতিনিধিত্ব করে যার মধ্যে রয়েছে ব্যবহারকারীর চোখে +Z, ডানদিকে +X এবং উপরে +Y।
বৈধ ব্যবহার (অন্তর্নিহিত)
-
XrEyeANDROIDব্যবহার করার আগেXR_ANDROID_eye_trackingএক্সটেনশনটি সক্রিয় করতে হবে । -
eyeStateঅবশ্যই একটি বৈধXrEyeStateANDROIDমান হতে হবে
XrEyeStateANDROID গণনা ট্র্যাক করা চোখের বিভিন্ন অবস্থা চিহ্নিত করে।
typedef enum XrEyeStateANDROID {
XR_EYE_STATE_INVALID_ANDROID = 0,
XR_EYE_STATE_GAZING_ANDROID = 1,
XR_EYE_STATE_SHUT_ANDROID = 2
} XrEyeStateANDROID;
এনামগুলির নিম্নলিখিত অর্থ রয়েছে:
এনাম | বিবরণ |
| ইঙ্গিত করে যে চোখটি ত্রুটিপূর্ণ অবস্থায় আছে অথবা উপস্থিত নেই। |
| ইঙ্গিত দেয় যে চোখটি তাকিয়ে আছে। |
| ইঙ্গিত করে যে চোখ পলক ফেলার কারণে বা পলক ফেলার কারণে চোখ বন্ধ হয়ে গেছে। |
XrEyeIndexANDROID গণনা বাম বা ডান চোখের সূচক সনাক্ত করে।
typedef enum XrEyeIndexANDROID {
XR_EYE_INDEX_LEFT_ANDROID = 0,
XR_EYE_INDEX_RIGHT_ANDROID = 1
} XrEyeIndexANDROID;
এনামগুলির নিম্নলিখিত অর্থ রয়েছে:
এনাম | বিবরণ |
| বাম চোখ। |
| ডান চোখ। |
XrEyeTrackingModeANDROID গণনা ট্র্যাক করা চোখের বিভিন্ন মোড সনাক্ত করে।
typedef enum XrEyeTrackingModeANDROID {
XR_EYE_TRACKING_MODE_NOT_TRACKING_ANDROID = 0,
XR_EYE_TRACKING_MODE_RIGHT_ANDROID = 1,
XR_EYE_TRACKING_MODE_LEFT_ANDROID = 2,
XR_EYE_TRACKING_MODE_BOTH_ANDROID = 3
} XrEyeTrackingModeANDROID;
এনামগুলির নিম্নলিখিত অর্থ রয়েছে:
এনাম | বিবরণ |
| ইঙ্গিত দেয় যে চোখের ট্র্যাকিং সক্রিয় নয়। |
| ইঙ্গিত দেয় যে শুধুমাত্র ডান চোখ ট্র্যাকিং করছে। |
| ইঙ্গিত দেয় যে শুধুমাত্র বাম চোখ ট্র্যাকিং করছে। |
| ইঙ্গিত দেয় যে বাম এবং ডান উভয় চোখই অনুসরণ করছে। |
চোখ ট্র্যাকিংয়ের জন্য উদাহরণ কোড
নিচের উদাহরণ কোডটি দেখায় কিভাবে একটি ভিউ স্পেসের সাপেক্ষে চোখের তথ্য পেতে হয়।
XrSession session; // previously initialized, e.g. created at app startup.
XrSpace viewSpace; // space created for XR_REFERENCE_SPACE_TYPE_VIEW.
// The function pointers are previously initialized using xrGetInstanceProcAddr.
PFN_xrCreateEyeTrackerANDROID xrCreateEyeTrackerANDROID; // previously initialized
PFN_xrDestroyEyeTrackerANDROID xrDestroyEyeTrackerANDROID; // previously initialized
PFN_xrGetCoarseTrackingEyesInfoANDROID xrGetCoarseTrackingEyesInfoANDROID; // previously initialized
PFN_xrGetFineTrackingEyesInfoANDROID xrGetFineTrackingEyesInfoANDROID; // previously initialized
// This will use the XrSession that is bound to the eye tracker done at time of creation.
XrEyeTrackerANDROID eyeTracker;
XrEyeTrackerCreateInfoANDROID createInfo{
.type = XR_TYPE_EYE_TRACKER_CREATE_INFO_ANDROID,
.next = nullptr};
CHK_XR(xrCreateEyeTrackerANDROID(session, &createInfo, &eyeTracker));
while (1) {
// ...
// For every frame in frame loop
// ...
XrFrameState frameState; // previously returned from xrWaitFrame
const XrTime time = frameState.predictedDisplayTime;
XrEyesANDROID fineEyesInfo{.type = XR_TYPE_EYES_ANDROID,
.next = nullptr,
.mode = XR_EYE_TRACKING_MODE_BOTH_ANDROID};
XrEyesANDROID coarseEyesInfo{.type = XR_TYPE_EYES_ANDROID,
.next = nullptr,
.mode = XR_EYE_TRACKING_MODE_BOTH_ANDROID};
XrEyesGetInfoANDROID eyesGetInfo{.type = XR_TYPE_EYES_GET_INFO_ANDROID,
.next = nullptr,
.time = time,
.baseSpace = viewSpace};
CHK_XR(xrGetCoarseTrackingEyesInfoANDROID(eyeTracker, &eyesGetInfo, &coarseEyesInfo));
CHK_XR(xrGetFineTrackingEyesInfoANDROID(eyeTracker, &eyesGetInfo, &fineEyesInfo));
// eyes tracking information is now available:
// drawLeftEye(eyesInfo.eyes[XR_EYE_INDEX_LEFT_ANDROID].eyePose);
// drawRightEye(eyesInfo.eyes[XR_EYE_INDEX_RIGHT_ANDROID].eyePose);
// ...
// Finish frame loop
// ...
}
// after usage
CHK_XR(xrDestroyEyeTrackerANDROID(eyeTracker));
নতুন বস্তুর ধরণ
নতুন এনাম ধ্রুবক
-
XR_EYE_MAX_ANDROID
XrObjectType গণনাটি এর সাথে প্রসারিত করা হয়:
-
XR_OBJECT_TYPE_EYE_TRACKER_ANDROID
XrStructureType গণনাটি এর সাথে প্রসারিত করা হয়েছে:
-
XR_TYPE_EYES_ANDROID -
XR_TYPE_EYE_TRACKER_CREATE_INFO_ANDROID -
XR_TYPE_EYES_GET_INFO_ANDROID -
XR_TYPE_SYSTEM_EYE_TRACKING_PROPERTIES_ANDROID
নতুন এনাম
নতুন কাঠামো
-
XrEyeANDROID -
XrEyesANDROID -
XrEyesGetInfoANDROID -
XrEyeTrackerCreateInfoANDROID -
XrSystemEyeTrackingPropertiesANDROID
নতুন ফাংশন
-
xrCreateEyeTrackerANDROID -
xrDestroyEyeTrackerANDROID -
xrGetCoarseTrackingEyesInfoANDROID -
xrGetFineTrackingEyesInfoANDROID
ইস্যু
সংস্করণ ইতিহাস
- সংশোধন ১, ২০২৫-০১-১৭ (কেনি ভার্কেমার)
- প্রাথমিক এক্সটেনশনের বিবরণ
OpenXR™ এবং OpenXR লোগো হল The Khronos Group Inc. এর মালিকানাধীন ট্রেডমার্ক এবং চীন, ইউরোপীয় ইউনিয়ন, জাপান এবং যুক্তরাজ্যে ট্রেডমার্ক হিসেবে নিবন্ধিত।