1

Тема: Як перевести float в шістнадцяткову систему?

Чи є якийсь простий способ це зробити, чи прийдеться писати все самому?

2

Re: Як перевести float в шістнадцяткову систему?

Вам треба представлення float? Можна зробити як тут.
Що ви таке дивне робите?

3

Re: Як перевести float в шістнадцяткову систему?

quez написав:

Вам треба представлення float? Можна зробити як тут.
Що ви таке дивне робите?

переводжу відстань в колір для тої карти висот.

4

Re: Як перевести float в шістнадцяткову систему?

FakiNyan написав:
quez написав:

Вам треба представлення float? Можна зробити як тут.
Що ви таке дивне робите?

переводжу відстань в колір для тої карти висот.

Чому відстань не ціла? Передрікаю вам дуже веселі баги.

Подякували: koala, leofun012

5

Re: Як перевести float в шістнадцяткову систему?

quez написав:
FakiNyan написав:
quez написав:

Вам треба представлення float? Можна зробити як тут.
Що ви таке дивне робите?

переводжу відстань в колір для тої карти висот.

Чому відстань не ціла? Передрікаю вам дуже веселі баги.

ну, тому що так влаштований ігровий рушій. Там є юніти, 1 юніт, це щось типу одного метра. А є й сантиметри, розумієте? А  рельєф плавний такий. От, один об'єкт на висоті 7, а інший, на висоті 8. Бачите?

▼Прихований текст

http://не-дійсний-домен/8ZlVi.jpg

В мене є ідея, використовувати лише одну цифру після коми, і знищити кому, тобто, якщо в мене число 10, то це буде 100 в моїй інтепретації, якщо 10.1, то 101, якщо 11.1, то 111, якщо 11, то 110, фєрштейн? Як вам така ідея? 1-9 сантиметрів це не так вже й багато, тому якщо перед персонажем, котрий стоїть на висоті 10 є якась штука, висотою 10,01 або 10.08, то вона буде вважатись такою ж, як і штука висотою 10, тобто персонаж зможе пройти, і те, що ноги будуть трішки в землі (адже я не буду знати, що треба підняти персонажа трохи вгору) не дуже погано вплине на гру, адже ніхто не дивиться на ноги персонажа.

▼Прихований текст

окрім мене, мене завжди бісили такі штуки, ну коли персонаж в землі. Потім я це виправлю, але мені треба буде інтегрувати PhysX в сервер

6

Re: Як перевести float в шістнадцяткову систему?

Ідея дуже хороша. Проте я не бачу причини позбавлятись від одиниць сантиметрів. Якщо вони влізають в тип, то їх цілком можна залишити.

7

Re: Як перевести float в шістнадцяткову систему?

А причому тут колір?

8

Re: Як перевести float в шістнадцяткову систему?

quez написав:

Ідея дуже хороша. Проте я не бачу причини позбавлятись від одиниць сантиметрів. Якщо вони влізають в тип, то їх цілком можна залишити.

можна, але при великих розмірах світу карта буде важити в два рази більше, адже зараз я хочу використовувати ushort, а це 2 байти, а float вже 4. Гаразд, ви мене переконали, я буду використовувати float.

9

Re: Як перевести float в шістнадцяткову систему?

Вітаю FakiNyan, ви тільки що відкрили фіксовану десяткову крапку :)
Насправді вам треба просто обчислювати висоти в міліюнітах (чи сантиюнітах), от і все.

Подякували: FakiNyan1

10

Re: Як перевести float в шістнадцяткову систему?

koala написав:

Вітаю FakiNyan, ви тільки що відкрили фіксовану десяткову крапку :)
Насправді вам треба просто обчислювати висоти в міліюнітах (чи сантиюнітах), от і все.

Я ще й не таке відкрию!

11

Re: Як перевести float в шістнадцяткову систему?

Torbins написав:

А причому тут колір?

Дійсно, він тут нафіг не треба. Я просто хтів якось візиалізувати цю карту, аби наочно запевнитись в тому, що вона вірно побудована.

12

Re: Як перевести float в шістнадцяткову систему?

FakiNyan написав:
quez написав:

Ідея дуже хороша. Проте я не бачу причини позбавлятись від одиниць сантиметрів. Якщо вони влізають в тип, то їх цілком можна залишити.

можна, але при великих розмірах світу карта буде важити в два рази більше, адже зараз я хочу використовувати ushort, а це 2 байти, а float вже 4. Гаразд, ви мене переконали, я буду використовувати float.

Борони боже, щоб я переконував використовувати float. Тоді вже int беріть, ті самі чотири байти, але без округлень та іншої нечисті.

Подякували: leofun011

13

Re: Як перевести float в шістнадцяткову систему?

quez написав:
FakiNyan написав:
quez написав:

Ідея дуже хороша. Проте я не бачу причини позбавлятись від одиниць сантиметрів. Якщо вони влізають в тип, то їх цілком можна залишити.

можна, але при великих розмірах світу карта буде важити в два рази більше, адже зараз я хочу використовувати ushort, а це 2 байти, а float вже 4. Гаразд, ви мене переконали, я буду використовувати float.

Борони боже, щоб я переконував використовувати float. Тоді вже int беріть, ті самі чотири байти, але без округлень та іншої нечисті.

тоді я буду використовувати сантиюніти, як порадив пан koala

14

Re: Як перевести float в шістнадцяткову систему?

обожнюю писати в одну строку

Console.WriteLine(Convert.ToUInt16(13f.ToString("F").Replace(",","")));

15

Re: Як перевести float в шістнадцяткову систему?

Lisp не пробували?

Подякували: quez1

16

Re: Як перевести float в шістнадцяткову систему?

koala написав:

Lisp не пробували?

Нє, а нашо?

17

Re: Як перевести float в шістнадцяткову систему?

Бо вам функціональне програмування подобається :)

18

Re: Як перевести float в шістнадцяткову систему?

koala написав:

Бо вам функціональне програмування подобається :)

Хіба? Мені подобається наслідуватись від класів і поліморфізм

19

Re: Як перевести float в шістнадцяткову систему?

Ну то поліморфно наслідуйтесь від класів в один рядок :)

Подякували: 0xDADA11C7, FakiNyan2

20

Re: Як перевести float в шістнадцяткову систему?

FakiNyan написав:
koala написав:

Бо вам функціональне програмування подобається :)

Хіба? Мені подобається наслідуватись від класів і поліморфізм

То ви просто не пробували писати іммутабельні функції вищого порядку.