X/y координаталарымен дұрыс айналдыру

Мен кішкене садақ ату ойыны жасауға тырысамын және мәселе әсіресе 2 пиксельге байланысты болуы керек, мен оларды қызықтырып, қызықтыратын боламын. Нағыз садақшы көрсеткіні кері тартып алған кезде, оның күші оған мүмкіндік беретіндіктен, көрсеткіні бірден тартып алмайды, жебе кері бұрылуға біраз уақыт кетеді. _Арм бұрышы векторға тең, экранда экранды қолдаған жерге дейін. Айналу өте жақсы, сондықтан жақсы. _Arrow _arrow сияқты бір сызықта болуы керек, олар 1 пиксельдік ені бар, сондықтан _arrow дәл _arrow жоғарғы жағында көрінеді.

Уақытпен өзгеретін айнымалы негіздегі x/y координаталарынан азайтуға тырыстым, және _arrow-дың орналасуын _arm орналасуына тең етіп қойдым және оны _arrow қайтарылғандай етіп жасауға тырыстым. алайда, егер сіз айналдырсаңыз, x/y өзгеріссіз қалады, себебі ол x және y осьтеріне пропорционалды емес, сондықтан, негізінен, _arrow қолмен негізделген немесе вектордың бұрышына байланысты аздап төмен немесе қолыңыздан сәл жоғары болады .

Қаншалықты кішкене мөлшерде ұстап тұрғандай көрінетін етіп, көрсеткішті көрсету үшін жылжудың x/y позициясын және сенсорлық векторды қалай қолдануға болады, алайда оның орналасуы ұқсас болады қолына дейін, бірақ сәл өшіріп, әлі күнге дейін барлық перифериялық пиксель. Егер сізге ақпарат қажет болса, пікір қалдырыңыз.

1
Жоқ. Спрайттың орналасуы суреттің ортасына негізделген. Сондықтан егер екеуі де ұзындығы 20px/1px болса, мен мен arrow.osition = arm.position орнатсам, олар бір-біріне қарама-қарсы. Мысалы, 45 градус бұрышта, мысалы, .75 пиксель төмен. X және .75 пиксель болуы мүмкін, мен қолыңыздың көрсеткішін орнататын еді. бұл ұстанымға және оның азайтылуына байланысты, ол оны ұқсайды.
қосылды автор Gabriel, көзі
Сіз екі ұпаймен анықталған сызықты экстраполяциялауға тырысып жатқаныңызды дұрыс түсінемін бе?
қосылды автор Dabbler, көзі

1 жауаптар

Мен толық түсіндім деп сенімді емеспін, бірақ бәрібір жауап беруім керек:

To make the arrow move and rotate to the same place as the consider adding the arrow as a child of the arm. You can still render it behind if you like by making its z is less than one: [arm addChild:arrow z:-1]

Одан кейін, көрсеткі жебе тәрізді қолыңыздан алыстатып, сол жаққа көрсеткідегі орынды орнатыңыз.

Мен бұл шешімді көріп тұрған мәселе, алайда, жебенің садақтан шыққаннан кейін, спрайттардың осы топтамасы ерекше емес болуы мүмкін. Мүмкін, сізде көрсеткі баланың қолында болуын қаламаңыз, өйткені координат жүйелері бұдан былай байланыста емес.

Олар « ұсынған мәселені шешетін болса, деген сенімді екеніне қарамастан, мұнда

Плакаттың шешімі

Мен бұрыштың негізіндегі қолды х және у координаттарын алуға тура келді, содан кейін мен қолмен бірдей бұрышқа негізделген және одан шырмалған санның күнәсын алдым.

0
қосылды
Мен айтқан нәрсені алмайсың :) Мен кейбір сынақтар мен қателіктерден кейін өзімді өзім ойлап таптым. Мен бұрыштық негіздегі қолды х және у координаттарын алуға мәжбүр болдым, содан кейін қолыммен бірдей бұрышқа негізделген саннан бастап күнәдан құтылдым.
қосылды автор Gabriel, көзі
Хахахаға тым көп күш салу. Мен ұсынған нәрсе менің проблемамды шешетініне сенімдімін.
қосылды автор Gabriel, көзі
Ия, сұрақты дұрыс оқығаныма сенімді емес еді. Мен жауапымды жоямын, бірақ жауапты жіберіп, оны болашақ пайдаланушылар үшін дұрыс деп белгілеуіңіз керек.
қосылды автор James Webster, көзі
Сіз мұнда қалдырған жауабыңызды жауап ретінде жіберіңіз. =]
қосылды автор James Webster, көзі
Мен жауаптарды біріктірдім :)
қосылды автор James Webster, көзі